我创建了这个脚本来使用 jQuery 向上滚动,但是当您多次将鼠标悬停和鼠标移出时,该脚本会进入循环,直到每次将鼠标悬停在它上面时都完成。
我已经尝试寻找解决方案,但没有解决,代码如下:
$(document).ready(function(){
$('.desc').hide();
$('.work').mouseover(function(){
$('.desc', this).slideDown('900');
});
$('.work').mouseleave(function(){
$('.desc', this).slideUp('900');
});
});
最佳答案
尝试使用.stop()
,注意将 true 作为两个参数传递,它会清除队列(阅读文档以获取更多信息)并跳转到末尾。如果您不传递 true 作为参数,动画将排队并执行,因此您将面临与目前相同的行为
$(document).ready(function(){
$('.desc').hide();
$('.work').mouseover(function(){
$('.desc', this).stop(true,true).slideDown('900');
});
$('.work').mouseleave(function(){
$('.desc', this).slideUp('900');
});
});
关于jquery - 防止循环 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8631303/