编程语言
首页 > 编程语言> > javascript – 在背景选项卡上运行画布

javascript – 在背景选项卡上运行画布

作者:互联网

我最近创建了一个HTML5画布动画(也使用Processing.js).

问题是当我将浏览器切换到另一个标签时,动画停止播放.

当用户位于与包含动画的选项卡不同的选项卡上时,如何允许动画继续播放?

例:
http://jsfiddle.net/EyFTr/3/

如果您切换标签时钟停止,但如果您打开链接一个新窗口并模糊窗口,时钟仍将移动.

解决方法:

简短的回答是你不能.

https://developer.mozilla.org/en/DOM/window.setTimeout

In (Firefox 5.0 / Thunderbird 5.0 / SeaMonkey 2.2) and Chrome 11, timeouts are clamped to firing no more often than once per second (1000ms) in inactive tabs; see bug 633421 for more information about this in Mozilla or crbug.com/66078 for details about this in Chrome.

有问题的浏览器在引用中有点陈旧,但它仍然相关.这是设计的.它可以在选项卡未激活时减少处理器负载. (Processing.js使用setTimeout进行动画制作)

有几种方法可以“修复”这个问题.它们涉及检查时间,并在标签变为活动状态时计算对象“应该”基于时间的位置.在你的例子中,虽然看起来你的代码会这样做,因为它的时钟无论如何都是基于时间的.

标签:javascript,canvas,processing-js
来源: https://codeday.me/bug/20190613/1232848.html