jQuery-多次悬停会破坏javascript吗?

jQuery-多次悬停会破坏javascript吗?,jquery,jquery-animate,Jquery,Jquery Animate,我有一个简单的代码,当用户将鼠标悬停在幻灯片上的图像上时,相关文本会在图像上淡入。但是,如果用户来回悬停几次,效果就会停止工作 $('div.slideshowImage').hover(function() { $('div.slideshowImageText').stop().fadeIn('500'); }, function() { $('div.slideshowImageText').fadeOut('500'); }); 您还需要清除队列,如下所示: $('div.slides

我有一个简单的代码,当用户将鼠标悬停在幻灯片上的图像上时,相关文本会在图像上淡入。但是,如果用户来回悬停几次,效果就会停止工作

$('div.slideshowImage').hover(function() {
$('div.slideshowImageText').stop().fadeIn('500');
},
function() {
$('div.slideshowImageText').fadeOut('500');
});

您还需要清除队列,如下所示:

$('div.slideshowImage').hover(function() {
  $('div.slideshowImageText').stop(true).fadeIn('500');
}, function() {
  $('div.slideshowImageText').fadeOut('500');
});

的第一个参数告诉它是否要清除队列…当前您正在停止动画,但重复悬停将使竞争动画与淡入淡出相冲突…当您不希望队列稍后执行时,请清除它,否则它将像此处一样干扰。

您也需要清除队列,像这样:

$('div.slideshowImage').hover(function() {
  $('div.slideshowImageText').stop(true).fadeIn('500');
}, function() {
  $('div.slideshowImageText').fadeOut('500');
});

的第一个参数告诉它是否要清除队列…当前您正在停止动画,但重复悬停将使竞争动画与淡入淡出一起排队…如果您不想稍后执行队列,请清除它,否则它将像这里一样干扰。

谢谢。不过,这似乎还不能解决问题。如果您将鼠标悬停在狗的图像上超过3次,它就会停止工作,您必须刷新页面才能将其取回@Yammi-啊,您还有另一个问题,您的淡入淡出值是从上一次淡入淡出未完成时存储的,请使用
.animate()
进行此操作,如下所示:太好了!因此,使用.unbind()将删除在第一个实例中归因于该事件的内容?@Yammi-oh-woops,删除
.unbind()
,这是我在控制台中删除页面中的处理程序时所做的操作…在替换代码时不需要它:)完美。谢谢你的帮助。不过,这似乎还不能解决问题。如果您将鼠标悬停在狗的图像上超过3次,它就会停止工作,您必须刷新页面才能将其取回@Yammi-啊,您还有另一个问题,您的淡入淡出值是从上一次淡入淡出未完成时存储的,请使用
.animate()
进行此操作,如下所示:太好了!因此,使用.unbind()将删除在第一个实例中归因于该事件的内容?@Yammi-oh-woops,删除
.unbind()
,这是我在控制台中删除页面中的处理程序时所做的操作…在替换代码时不需要它:)完美。谢谢你的帮助。