我有一个导航菜单子(monad) ul,当它的父 li 悬停在鼠标上时,它会进行动画处理。当鼠标退出时它也会向上滑动。但是,我试图让它在向上滑动之前延迟 1 秒。我希望 child ul 在鼠标离开后保持打开状态 1 秒钟。但是,它仍然立即向上滑动。这里有什么问题吗?
$(".ipro_menu li>ul").hide(); // Hide all
$(".ipro_menu li").mouseenter(function() {
$(this).children("ul").slideDown();
}).mouseleave(function() {
$(this).delay(1000).children("ul").slideUp(); // Wait 1 sec before sliding up
});
最佳答案
错误的顺序,在延迟动画之前获取元素,否则延迟应用于 this
,而不是它的子元素。
$(this).children("ul").delay(1000).slideUp();
关于javascript - 延迟后的 jQuery slideUp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23503740/