下面的代码基本上是我想做的,我理解是不正确的代码。
所以对于下拉菜单,我想延迟隐藏它。问题是,当我在隐藏延迟完成之前将鼠标悬停在另一个菜单项上时,它会覆盖下一个handlerIn
.
那么有没有一种简单的方法来清除setTimeout
下一个队列hover()
?
同样,下面的错误代码仅用于解释。
$('nav > ul > li').hover(function() {
clearTimeout(menuHide);
$(this).find('ul').show();
}, function() {
var menuHide = setTimeout(function() {
$(this).find('ul').hide();
}, 150);
});
更新:似乎clearInterval()
不是我想要的,因为我仍然想让它完成,而不是中止它。
有completeInterval()
没有机会?:)