0

当鼠标只停留在悬停区域时,有什么方法可以取消下拉列表?

当鼠标在 UL 上大约一秒钟时,我想下拉/向下滑动列表。

干杯

4

1 回答 1

0

您最好在单击而不是悬停时切换下拉菜单。这就解释了为什么。

如果您必须在悬停时执行此操作,您可以简单地设置一个计时器。

$('.myElement').hover(function() {
    var myElement = $(this);
    setTimeout(function() {
        if(myElement.is(':hover'))
        {
            // Do drop down here
        }
    }, 1000);
})

编辑:这可能不适用于 jQuery 1.8,另一种方法是使用一个类:

$('.toggleDropdown').hover(function() {
    $('ul', this).addClass('hover');
    setTimeout(function() {
        $('.hover').stop().slideDown(500);
    }, 1000);
}, function() {
    $('ul', this).removeClass('hover');
})

像这样:JSFiddle

于 2013-02-15T09:38:20.067 回答