🔍 inp.works

インタラクションを妨げるサードパーティスクリプト:診断と封じ込め

何が起きているか

サードパーティスクリプト — アナリティクス、タグマネージャー、広告、チャットウィジェット、A/Bテスト — はあなたのコードと同じメインスレッドで動きます。タグマネージャーが50のルールを評価したり広告スクリプトがペイロードを解析したりすると、ユーザーのクリックは自分の長いタスクを待つのと同じように待たされます。

Long Animation Frames APIは長いタスクをそのsource URLに帰属させるので、どのドメインがINPを犠牲にしているか正確に分かります。

見分け方

直し方

問題

<script src="https://cdn.example-widget.com/loader.js"></script>
<!-- synchronous: blocks parsing AND competes for the main thread -->

修正

<script async src="https://cdn.example-widget.com/loader.js"></script>
<!-- or better: inject on first user intent -->
<script>
  chatButton.addEventListener("click", loadChatWidget, { once: true })
</script>
サイトを無料でスキャン →
Advertise here