window.requestAnimationFrame

window.requestAnimationFrame() 方法会告诉浏览器你想运行一个动画,并要求浏览器在下次重绘(repaint)之前调用一个函数来更新动画。

你应该在准备更新屏幕上的动画时调用这个方法。它将使你的动画函数在下次重绘之前调用。回调执行的频率通常为每秒60次,但一般会与屏幕的刷新率相匹配。当在后台的 tab 或者隐藏的 iframe 中运行时,回调执行的频率会降低以提高性能与电池寿命。

window.requestAnimationFrame(callback);

window.requestAnimationFrame()