【问题标题】:Background Tab Animation and jQuery背景选项卡动画和 jQuery
【发布时间】:2011-07-18 18:05:08
【问题描述】:

见代码: http://jsbin.com/amavud/2

问题:在实现requestAnimationFrame的浏览器中,当带有动画的标签页设置为背景(打开新标签页)时,动画时间会被破坏。

问题:我对 requestAnimationFrame 的理解是动画在移动到背景标签时应该停止,但从这个例子来看,似乎 webkit 浏览器完成了当前动画然后停止。

问题似乎来自这样一个事实,即第二个和第三个球在移动之前需要延迟,需要一个 setTimeout。 requestAnimationFrame 在 jQuery 中的实现方式是否有问题,还是我只是编码错误?

我尝试使用 delay() 和 queue() 遵循 http://api.jquery.com/animate/ 上的建议,但似乎无法获得正确的效果。

【问题讨论】:

  • 我找到了一个临时解决方案——在 requestAnimationFrame 提交之前使用旧版本的 jQuery。它实际上并没有解决如何使用新提交处理背景动画的问题,但它确实使这个特定的动画工作。

标签: jquery animation jquery-animate


【解决方案1】:

我认为这不是您编码的方式,而是 requestAnimationFrame 不在后台工作的事实,因此它停止了。或者至少这是 Paul Irish 用粗体字说的“如果你在一个不可见的选项卡中运行动画循环,浏览器将不会让它继续运行”。 http://paulirish.com/2011/requestanimationframe-for-smart-animating/

由于这个 js 甚至不能在任何浏览器中运行,我不知道你为什么要实现它。

【讨论】:

  • 这就是问题所在——它在 IE 7/8 中运行良好,因为它没有实现 requestAnimationFrame。
【解决方案2】:

在 requestAnimationFrame (1.4.2) 之前使用旧版本的 jQuery。似乎错了。我认为 rAF 尚未正确实施。

【讨论】:

    猜你喜欢
    • 2013-02-25
    • 2011-04-18
    • 2014-01-28
    • 1970-01-01
    • 2018-01-19
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    • 2015-01-29
    相关资源
    最近更新 更多