ポールアイルランドにはrequestAnimationFrame for Smart Animatingという投稿があります。今はポールがスマートな男です - そして、私はこのアイディアの適用範囲を理解しようとしています。Paul IrishのrequestAnimationFrame shimを使用しているブラウザはどれですか?
は彼がHTML5アニメーションを行うに言う - あなたはこのようなrequestAnimationFrameのシムを使用する必要があります理解
// shim layer with setTimeout fallback
window.requestAnimFrame = (function(){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000/60);
};
})();
// usage:
// instead of setInterval(render, 16) ....
(function animloop(){
requestAnimFrame(animloop);
render();
})();
// place the rAF *before* the render() to assure as close to
// 60fps with the setTimeout fallback.
を。 We can apply this in a JSFiddle like thisとなり、結果は非常に良好です。
しかし、if I rip out the shim layer functionでは、Chrome 31とFirefox 24では正常に動作します。
私はcompatibility for the RequestAnimationFrame functionを見ると、ブラウザがこの機能を非常に長い時間持っているように見えます。
私の質問は - です。どのブラウザがPaul IrishのrequestAnimationFrame shimを使用していますか?あなたはそれを切り取ることができ、それはまだ動作し、ブラウザが長い間それを持っていたように見えます。
ちょうどあなたがリンクしたリストのもののために。特に、IE9の場合。 – SLaks
シムを使用しないでください。 1000/60の実行を遅らせるだけです。 rafの唯一の目的は、過剰なDOM更新を避けることです。次のフレームの実行のためのコールバックをスケジュールするreal raf polyfillを使います。 –