Recaptchaは、次のようなスクリプトのロードを推奨しています。
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
これをhtmlドキュメントのheadセクションに追加し、ロード時にChromeでチェックしました。 Chromeは、ページのロード前にロードされることを示します(chrome devtoolsのネットワークタブは、ページのロードの終了を赤い垂直線で示し、上記のスクリプトはその前にロードされます。
何故ですか?ページのロード後のスクリプトのロードをGoogle延期することで推奨されているように非同期延期を追加するべきではありませんか?
allリンクされたリソース(<script async defer
を含む)がロードされた場合にのみ、ページが完全にロードされます。これは、onload
イベントが発生したときです。
ただし、DOMContentLoaded
イベントが発生する可能性が高いbefore this-おそらくbeforeasync defer
スクリプトがロードされます。 (私は「おそらく」と言います-ブラウザが別のスレッドでスクリプトをロードできると判断できる場合同時に速度を落とすことなく、おそらくそうなると思いますが、保証はありません。 )