下拉菜单多次重复其动画

时间:2011-12-13 18:03:08

标签: jquery html css jquery-ui

我有一个JQuery下拉菜单,当我们将鼠标悬停在菜单上时,这个问题很难解释。当我们多次悬停顶部菜单时,它一直是动画,您可以通过将光标移动到“我们的服务”,“位置”菜单连续大约10次,15次来看。

这是你可以检查的JSfiddle .. http://jsfiddle.net/bKxXZ/13/

下面给出了JQuery代码(之前的代码是我的堆栈朋友gilly3之一)

$(function() {
    $("ul.topnav li:has(.subnav)").hover(function() {
        $("ul.subnav", this).slideDown('fast').show();
    }, function() {
        $("ul.subnav", this).slideUp('slow');
    });
});

2 个答案:

答案 0 :(得分:1)

您需要使用stop(true,true)这样的功能:

$(function() {
$("ul.topnav li:has(.subnav)").hover(function() {
    $("ul.subnav", this).stop(true,true).slideDown('fast').show();
}, function() {
    $("ul.subnav", this).slideUp('slow');
});
});

请注意它在slideDown

之前的展示位置

答案 1 :(得分:1)

您可以在运行下一个动画之前使用stop(true,true)函数以避免排队的动画,请参阅此处的更新:http://jsfiddle.net/bKxXZ/15/