Hover Intent не работает - PullRequest
       11

Hover Intent не работает

0 голосов
/ 18 ноября 2010

Я проверяю свой код много раз и использую что-то похожее на другом веб-сайте, где он работает.Вот ссылка на сайт: http://bit.ly/34XhDb

    //add hover intent to dropdown
jQuery(document).ready(function(){
var config = {
sensitivity: 3, // number = sensitivity threshold (must be 1 or higher)
interval: 100, // number = milliseconds for onMouseOver polling interval
over: doOpen, // function = onMouseOver callback (REQUIRED)
timeout: 1200, // number = milliseconds delay before onMouseOut
out: doClose // function = onMouseOut callback (REQUIRED)
};

function doOpen() {
    jQuery(this).addClass("hover");
    jQuery('ul:first',this).fadeIn();
}
function doClose() {
    jQuery(this).removeClass("hover");
    jQuery('ul:first',this).fadeOut();
}
jQuery("ul#main_catnav li").hoverIntent(config);

});

Я проверил с помощью отладки, но, похоже, это не конфликт, плюс применяется класс наведения.

Спасибо!

1 Ответ

1 голос
/ 18 ноября 2010

Проблема не в плагине, а в вашем CSS, у вас есть это:

ul#main_catnav ul { /*...other styles... */ display: none; }
ul#main_catnav li:hover ul { display: block}

Так что, когда мышь уходит, :hover больше не применяется и сразу скрывается с помощью CSS,не JavaScript.Чтобы это заработало, вам также нужно добавить li.hover, например:

ul#main_catnav ul { /*...other styles... */ display: none; }
ul#main_catnav li:hover ul, ul#main_catnav li.hover ul { display: block}

, который учитывает элемент, наведенный мышью, или имеющий класс .hover, как вы даетеэто с помощью плагина hoverIntent.

...