我使用createjs.TweenJS
在我的画布游戏中缠绕对象。问题是当我切换标签时,Tween会暂停并在标签重新聚焦后继续处理。
我的目标是显示当前时间状态的阶段状态,当标签重新聚焦时。如果以不同的方式说出来,当我切换标签时,进程不能暂停,而是在后台运行。
如果我将TweenJS计时模式切换为TIMEOUT而不是requestAnimationFrame(RAF),那么一切都运行良好。
使用requestAnimationFrame计时模式是否可以实现相同的结果?
答案 0 :(得分:2)
这是英国皇家空军的特色之一。它具有不确定的频率,并允许浏览器限制甚至完全暂停背景动画,以防止隐藏的内容烧毁CPU和电池。它由浏览器管理,您无法控制它。
如果我没记错的话,某些浏览器(例如Safari)也会在某种程度上限制超时事件。
查看所有现代浏览器中提供的页面可见性API,您应该能够跟踪隐藏选项卡到显示选项卡之间所经过的时间,并做出相应的反应。