JS 中,window 对象的 requestAnimationFrame 是什么?

2022-07-24 13:16:11

window 提供一个 API,优化动画的执行。

语法:

const id= window.requestAnimationFrame(callback);

传入一个回调函数callback,在下一次重绘的时候执行。

浏览器重绘频率一般是60 fps(frame per second),也就是一秒钟执行60帧动画。

它的优点有:

  1. 执行流畅。requestAnimationFrame 执行时间和重绘频率一致,相当于自带函数节流功能。
  2. 执行准确。浏览器重绘频率定好的,不会像setTimeout 需要主流程执行完毕再执行。
  3. 性能优化。在页面 hidden 的情况下,requestAnimationFrame 不会执行,节省性能。

取消requestAnimationFrame

window.cancelAnimationFrame(id)

我是 Pandy,一个喜欢英语的程序猿 👨‍💻

如果你挣扎于看不懂英语官网,或者对英语感冒的话,可以关注公众号Yopth 哦,我们加入一起充电英语 🔌 。

Reference

[1] https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame
[2] https://blog.csdn.net/xuanhun521/article/details/112793135

  • 作者:Yopth
  • 原文链接:https://blog.csdn.net/YopenLang/article/details/125385482
    更新时间:2022-07-24 13:16:11