画面初期化時にコードを実行!DOMContentLoaded  vs  load

画面初期化時にコードを実行!DOMContentLoaded   と   load というふたつのイベントリスナーのちがいについて

<DOMContentLoaded>  HTMLをブラウザが解釈してDOMツリーを作成し終わったタイミングで発火するイベント

<load>   そのあとの HTMLからDOMを作成し終わったあとに,さらに画像や動画,スタイルシートJavaScriptなど,すべてのコンテンツをダウンロードしおわったあとに発火するイベント

DOMContentLoaded は documentに対してaddEventListenerで登録しているが load というイベントは window というオブジェクトに対して登録している。

DOMContentLoaded は window に対しても登録することができるが,load というイベントはdocumentに対して登録することはできない。

JavaScriptはDOMを通してHTMLの要素を取得・変更するが,DOMが形成される前にHTMLの要素にアクセスしようとするとエラーが発生する

 

f:id:meowpaw:20210709233758p:plain