滑动面板 .stop() 在 $(this).next 上不起作用

Sliding Panel .stop() not working on $(this).next

本文关键字:this next 不起作用 stop      更新时间:2023-09-26

我有多个框,将鼠标悬停在滑动面板上时,应该从悬停的面板上滑出。 我让它在面板上方时没有滑动面板停止的情况下工作,可以在这里看到:

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();
});

我一定是做错了什么简单的事。 您的帮助将不胜感激。

当你exec $(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/