エフェクトとコード。
http://u6.gg/Skx
長時間実行すると、一時停止したり、応答がなかったり、少し固まり始めたりすることがあります。
最適化を求めるか、解決策を提示します。
弾幕は消えるよりも早く増加し、一定の數(shù)に達(dá)すると確実にスタックします。
解決策としては、弾幕キュー數(shù)の上限を増やしてください。
また、左の計(jì)算のためにjsが呼び出され続けるため、メモリがどんどん大きくなり、GCをトリガーしてからのラグも発生します。
しかし、なぜ requestAnimationFrame を使用するのでしょうか? CSS アニメーションを使用するのですか?
This.data.barrage.item には 34 個の項(xiàng)目があります。それを制御します
一番左の要素に移動して削除します
コンソールがコメントアウトされたログもあります
試してみてください
CSS3アニメーションを使用し、開始位置は要素の左側(cè)と畫面の右側(cè)、停止位置は要素の右側(cè)と畫面の左側(cè)です。
アニメーションが終了したら要素を移動します。