2

Chromeelement.addEventListener("touchstart")では、システムのパフォーマンスに深刻な問題があり、場合によっては 1 回の呼び出しで 100 ミリ秒に達します。

r00122 listen touchstart: 60.000ms
r00123 listen touchstart: 61.000ms
r00124 listen touchstart: 61.000ms 

上記はconsole.time純粋なaddEventListener呼び出しの出力です。他のイベントの同一の呼び出しには 0 ミリ秒かかります。興味深いのは、1 回または 2 回の呼び出しごとに、1 ミリ秒ずつ時間がかかることです。「タッチイベントのエミュレート」をオンにしてもオフにしても違いはありません。

ただし、Chrome での単純なテスト ケースは 0.01 ミリ秒/呼び出しで実行されるため、他の依存関係が必要です。ページに多数の要素があり、多くのイベントリスナー (1000) を設定しているという事実以外には、それが何であるかはわかりません。それでも、Mozilla と Safari の私のページでは、呼び出しは瞬時に行われます。一体何がこれを説明できるのでしょうか?

4

1 に答える 1