2

編集:この質問は現在、歴史的な関心事のみです:

ベンダー プレフィックスとベンダー固有の動作が削除されたようです。

必要に応じて、古いベンダー固有の動作をエミュレートする方法について気軽に質問してください。


requestAnimationFrameChrome、Firefox、Internet Explorer、Operaでは、それぞれ異なる機能を持っている場合があります。

  • webkitRequestAnimationFrame
  • mozRequestAnimationFrame
  • msRequestAnimationFrame
  • oRequestAnimationFrame

仕様は、共有する必要がある動作について非常に明確ですが、どのように異なるかについて信頼できる回答を持っている人はいますか?

編集:当分の間、私は自分の答えを受け入れています。私はまだ IE 10 の実装の詳細に興味があり、Opera がそれを実装する必要がある場合は Opera のものです。大きな違いがある場合は、質問を更新します。

4

2 に答える 2

1

完全な説明のための最良のページはおそらくこれです。

于 2011-09-02T13:10:53.143 に答える
1

私が見つけた最高のリソースは

https://developer.mozilla.org/en/DOM/window.requestAnimationFrame

これはアドレスwebkitmozバリエーションのみです。

mozrequestAnimationFrame:引数なしで呼び出すことができます。これによりMozBeforePaint、ブラウザがアニメーション フレームを描画する準備ができたときにイベントが発生します。

window.mozRequestAnimationFrame();
window.addEventListener("MozBeforePaint", function(event){
  //event.timeStamp has the next repaint time
  /* animation code here*/
}, false); 

webkit: 2 番目の引数で呼び出すことができますrequestAnimationFrame。これは、アニメーション化される DOM 要素である必要があります。これにより、その DOM 要素が表示されている場合にのみアニメーション関数が呼び出されます。

(Chrome の場合)例:コンソールを開いて、アニメーション関数によって出力されたログ メッセージがキャンバスが表示されている場合にのみ生成されることを観察することで、それが機能していることを確認できます。

これにより、Opera と IE のバリエーションが未解決のままになります。

于 2011-09-02T13:10:21.180 に答える