滑动面板.stop()无法处理$(this).next

时间:2016-03-10 17:57:28

标签: javascript jquery

我有多个盒子,当悬停在滑动面板上时,应滑出您正在悬停的那个。我可以在没有滑动面板的情况下工作,当在面板上方时可以看到:

https://jsfiddle.net/r70nbL8t/3/

$('.clickable_div').mouseover( function(){
$(this).next('.nav_menu').slideDown();
})
$('.clickable_div').mouseleave( function(){
$(this).next('.nav_menu').slideUp();
});

但是当我介绍停止时,面板不再滑动

https://jsfiddle.net/r70nbL8t/4/

$(".wrap").mouseover(function(){
$(this).next(".nav_menu").stop().slideDown("slow");
});
$(".wrap").mouseout(function(){
$(this).next('.nav_menu').slideUp();
});

我必须做一些简单的错误。感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

当你执行$(this).next()返回元素p时,你应该使用find()函数

$(".wrap").mouseover(function(){
   $(this).find(".nav_menu").stop().slideDown("slow");
});

$(".wrap").mouseout(function(){
   $(this).find('.nav_menu').slideUp();
});

结果:https://jsfiddle.net/cmedina/r70nbL8t/5/