我注意到,每当我停靠浏览器窗口或切换标签时,requestAnimationFrame停止被调用(我希望发生这种情况)。requestAnimationFrame detect stop
有没有办法检测何时该停止发生?
原因是,我有一个计时器在我的游戏中运行。当requestAnimationFrame不再呈现时,我想停止计时器。我调查了'window.blur'和'window.focus'事件,但这些与requestAnimationFrame停止和启动时无关(例如,当您在浏览器窗口外单击window.blur事件是但是requestAnimationFrame继续运行)。
我想在requestAnimationFrame开始和停止时订阅。你知道一个方法吗?
是的。事实证明,这是检测rAF停止/启动时的唯一方式。基本上我正在计算每个渲染之间的毫秒数。如果该数字超过160(相当于6.25 fps),那么我们可以安全地假定用户已经在浏览器中切换了标签或者使用了窗口停靠。 – ChrisRich