【问题标题】:fade effect keeps repeating as many times as I hover当我悬停时,淡入淡出效果不断重复
【发布时间】:2011-06-15 06:18:48
【问题描述】:

当我将鼠标悬停在两个 div 上时,我正在使用淡入淡出效果来隐藏和显示它们。唯一的问题是,当我将鼠标悬停在它上面时,动画会不断重复多次,即使这是偶然的,而且有点烦人。

我使用 .stop(true, false) 方法制作动画。

像这样:

$('.fallInspiration').hover(
   function(){
      $(this).stop(true, false).animate({color: '#D55E8E'}, 300);
},

但我不知道如何解决使用淡入淡出效果时的问题。

这是我正在使用的代码:

$('.thisWeekWrap').hover(
    function()
    {
        $('.thisWeek').fadeOut(400);
        $('.thisWeekHover').fadeIn(400);
    },
    function()
    {
        $('.thisWeek').fadeIn(400);
        $('.thisWeekHover').fadeOut(400);
    }
);

非常感谢您的帮助。谢谢

【问题讨论】:

  • 你能在 jsFiddle.net 上制作一个可复制的版本吗?
  • 第一个代码块的相关性是什么?您肯定需要在第二个代码块中调用 .stop() 吗?

标签: jquery html animation fade repeat


【解决方案1】:

您回答了自己的问题:在制作效果之前致电.stop()

$('.thisWeek').stop().fadeOut( 400 )

如果这会导致问题(有时 jQuery 可能会“保存”已停止的值),请尝试:

$('.thisWeek').stop().animate({ opacity : 0 }, 400);

【讨论】:

  • 这对我的用例很有效!这应该被接受。如果我将鼠标从 div 上移开,它会停止淡入(并淡出)。谢谢!
猜你喜欢
  • 1970-01-01
  • 2015-09-02
  • 2011-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多