javascript - requestAnimationFrame() 调用是否在浏览器选项卡/窗口之间共享?

标签 javascript google-chrome createjs frame-rate requestanimationframe

我注意到,当我在 YouTube 上(在 Chrome 中)播放视频时,我使用 CreateJS 开发的 HTML5 游戏的帧速率是平时的一半。

就其本身而言,在桌面上 - 运行 60fps 没有问题。

YouTube 视频正在运行吗? 30fps!

奇怪的是,我似乎无法在另一台机器上重现该问题。它是否与不同显卡/驱动程序响应 requestAnimationFrame 调用的方式有关?

最佳答案

没有。不同的浏览器选项卡不共享 RAF 调用。

如果您有 2 个浏览器选项卡,每个选项卡都有一个 RAF 循环,则获得焦点的选项卡将运行其 RAF 循环,而未获得焦点的选项卡将停止其 RAF。

但是,如果您在单个浏览器选项卡上有多个 RAF 调用,则所有这些 RAF 调用将合并到与显示刷新同步的单个执行中。

关于javascript - requestAnimationFrame() 调用是否在浏览器选项卡/窗口之间共享?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25939273/

相关文章:

javascript - Ruby 的 "inspect"的 JavaScript 等价物是什么?

javascript - mozilla firefox 中的对齐有缺陷,而 chrome 中的一切都很好

css - 带有剪辑路径的 SVG 直线路径在 Chrome 中不可见

javascript - EaselJS colorMatrixFilter 不适用于 Chrome

JavaScript:未捕获类型错误:无法读取 null 的属性 'style'

javascript - React Native CheckBox 和 FlatList : Cannot Toggle, 并且只能选择每个项目一次

javascript - JavaScript 性能中的空数组测试

google-chrome - 颜色选择器 - Chrome 开发者工具的建议

javascript - 延迟 CreateJS 动画时间轴

powerbi - 在 typescript 中使用 createJS?