【发布时间】:2026-01-22 13:15:02
【问题描述】:
我们可以使用requestAnimationFrame 在浏览器中绘制框架。但是,如果我们在同一个页面上有多个动画会发生什么?
例如,如果我们有 3 个自定义选取框和一些 2 个淡入淡出效果,因为每个效果都有自己的requestAnimationFrame,这是否意味着我们实际上在每个帧请求中绘制浏览器 5 次?
此外,如果我将文本滚动器 FPS 限制为 30FPS,但我的淡入淡出效果以 45FPS 运行,这并不意味着在 1 秒内我们总共运行 3*30 + 2*45 = 180帧画?
让 1 requestAnimationFrame 绘制我所有的动画会更好(考虑到我将页面上的所有动画都限制为相同的 FPS 速率)吗?结果,我最终只能每秒绘制 30-60 帧(取决于 FPS 限制)?
我只是在想办法尽可能减少 CPU 使用率。
【问题讨论】:
标签: javascript performance animation requestanimationframe