哪种画布动画效果最好? requestAnimFrame或setInterval?
答案 0 :(得分:5)
requestAnimationFrame
可确保您的动画在浏览器准备好绘制新帧时完全运行。如果您使用setInterval
,则可能存在以下风险:
requestAnimationFrame
可以减少运行频率(这可以节省电池寿命),但setInterval
的某些实现也会这样做(目前在Firefox和Chrome中)。< / p>
requestAnimationFrame
是从头开始构建的,旨在用于动画; setInterval
旨在执行任何需要定期操作的操作。如果您正在制作动画(尤其是画布动画),我建议使用requestAnimationFrame
,并为旧版浏览器支持setInterval
。
答案 1 :(得分:-1)
但是你可以在一个大函数调用中使用setInterval,即加载并仅在窗口加载时调用它:
function load()
{
var intervalle = x;
var game= setInterval(process,intervalle);
...
}
window.addEventListener("load",load,true);