刷新率
指电子束对屏幕上的图像重复扫描的次数,即屏幕每秒画面被刷新的次数,大多数电脑显示器刷新频率60Hz。
Javascript动画
setTimeout、setInterval
通过setTimeout或setInterval一帧一帧的改变UI达到动画的效果。如果渲染频率与浏览器刷新频率不一致,即延迟时间比刷新时间短,会丢帧,造成视觉上动画卡顿。
requestAnimationFrame
对setTimeout、setInterval优化,防止丢帧。每一帧的所有DOM操作集中,一次渲染完成。渲染频率与浏览器刷新频率一致,且对隐藏或不可见元素,不进行重排或重绘。
GPU加速
直接使用GPU改变图层(UI),无需渲染引擎重新渲染的过程,提高绘制速度。 如典型的3D变换:
.cube { -webkit-transform: translate3d(250px,250px,250px) rotate3d(250px,250px,250px,-120deg) scale3d(0.5, 0.5, 0.5); }