JQuery取消快速悬停操作下拉/下拉列表

时间:2013-02-15 09:30:50

标签: javascript jquery html css html-lists

当鼠标只悬停悬停区域时,有没有办法取消列表的下拉?

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

干杯

1 个答案:

答案 0 :(得分:0)

您可能最好在点击时切换下拉菜单,而不是悬停。 This解释了原因。

如果你必须在悬停时这样做,你可以简单地设置一个计时器。

$('.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