我有一个悬停滑动面板,当鼠标离开时需要延迟。 就像我现在拥有它一样,悬停触发器将导致多个循环,因此面板变得疯狂起来&下。 这是代码:
$(document).ready(function(){
(function(){
var trigger = $('li.HotelPaneltrigger');
var panel = trigger.find('.panel').hide();
trigger.mouseenter(function(){panel.slideDown('slow');}).mouseleave(function(){panel.slideUp('slow');});
})();
});
我尝试了这个没有成功:
$(this).mouseleave(function(){
$(本).delay( '500')panel.slideUp( '慢');
答案 0 :(得分:0)
我不确定我是否帮助你,但我认为调用.stop()
会为你做到这一点。
panel.stop(true, true).slideDown('slow');
和
panel.stop(true, true).delay(500).slideUp('slow');
参考:.stop()
答案 1 :(得分:0)
在.stop(true,true)
和slideDown
事件发生之前添加slideUp
可以解决您的问题。