ているとき、私はanimate.css
ライブラリを使用してCSSトランジション/アニメーションに大きく依存しているウェブサイトを持って停止する必要がありますCPUのボトルネックを避けてください。だから私は不思議に思っています:アニメーションがビューポートの外にあることを検出したときにCSSアニメーションを手作業で(JSを使用して)停止するか、ブラウザが自動的にそれらのアニメーションの処理を停止しますか?私はCSSアニメーションは、彼らが外にビューポート
ほとんどの私のアニメーションは、いくつかの時間間隔の間に要素にfadeInUp
のようなクラスを追加/削除されます。ですから、私の質問は、これは、要素がビューポートの外にあるときにそれらのクラス(アニメーションを引き起こす)を追加すると、ブラウザに重大なオーバーヘッドが生じますか?ブラウザは、それらのアニメーションが表示されていないときに自動的に「一時停止」しますか?
私はそれが完全に真実だとは思わない。数週間前、アニメーションが見えなくなったところまでスクロールして何が起こるのかを確認するために、非常に重い/集中的なCSSアニメーションを作成しました(私のWINDOWSのCTRL + SHIFT + DELで) (70%から55%)。もし私が再びスクロールすると、それは再び約70%になるでしょう。しかしこれはFirefoxでしか起こらなかったが、クロムと私は小さなドロップを見たがそれはあまりにも決定的ではない。 – Samul
JSアニメーションでは、アニメーションを下にスクロールすると、CPU使用率に差異はありません。私は、ビューアで使用されているかどうかにかかわらず、ほとんどのブラウザがすべてのJSコードを実行し続けていると思います。しかし、CSSでこの動作は大きく異なるようです。しかし、私はそれについていくつかの文書を見つけるのに苦労しています... – Samul