为什么jQuery动画在不是活动标签时会搞砸?

时间:2011-08-18 15:13:58

标签: javascript jquery firefox google-chrome animation

你可以看到这里发生了什么...... http://jsfiddle.net/gregguida/36SEZ/4/

切换标签大约30秒然后再回来,动画完全失控。

我认为这与浏览器在窗口没有焦点时处理setInteval()的方式有关,但我不确定是否是这种情况。我也不知道该怎么办。任何见解都表示赞赏。

更新:也尝试使用setTimeout代替setInterval,但我正在尝试类似的结果

谢谢!

2 个答案:

答案 0 :(得分:4)

在为我的网站创建动画时遇到了同样的问题。我解决它的方法是删除对setInterval的调用并在每次动画完成时设置新的超时。

以下是您使用该方法更新的代码:http://jsfiddle.net/36SEZ/5/

请注意,在完成所有动画后,只应调用一次setTimeout。为了确保发生这种情况,我将它放在最后一个div的最后一个动画的complete函数中。

答案 1 :(得分:2)

您应该阅读http://api.jquery.com/animate/#notes-0

处的第二个音符