我想用jquery效果打开子菜单 fold ,问题是如果用户执行“悬停效果”以快速然后菜单保持打开状态,我怎么能避免这种情况,我的jquery代码是:
$('ul.mainmenu li').hover(
function() {
$(this).children('ul').show('fold', 570);
}, function() {
$(this).children('ul').hide('fold', 500);
}
);
我的JsFiddle链接是:http://jsfiddle.net/9wkBf/
答案 0 :(得分:2)
<强> Updated Fiddle 强>
问题背后的原因是,第一个事件$(this).children('ul').show('fold', 570);
已排队,直到完成,第二个动画将无法启动。
以下代码段可以是解决方法
$('ul.mainmenu > li').hover(
function() {
$(this).children('ul').show('fold', 570);
}, function() {
$('ul:not(.mainmenu)').hide('fold', 500);
}
);
*重要提示:这仅适用于当前情况。