カテゴリ: JavaScript 更新日: 2026/02/10

JavaScriptのDOMContentLoadedとloadイベントの違いを理解しよう

JavaScriptのDOMContentLoadedとloadイベントの違いを理解しよう
JavaScriptのDOMContentLoadedとloadイベントの違いを理解しよう

先生と生徒の会話形式で理解しよう

生徒

「Webページが完全に読み込まれたタイミングで処理をしたい場合、どのイベントを使えばいいですか?」

先生

「JavaScriptには主にDOMContentLoadedloadの2つのイベントがあります。それぞれ動作のタイミングが違うので使い分けが重要です。」

生徒

「違いって具体的には何ですか?」

先生

「簡単に言うと、DOMContentLoadedはHTMLの読み込みが終わったタイミング、loadは画像やスタイルシートなども含めたすべての読み込みが終わったタイミングで発火します。」

1. DOMContentLoadedイベントとは?

1. DOMContentLoadedイベントとは?
1. DOMContentLoadedイベントとは?

DOMContentLoadedは、HTML文書の解析が完了してDOMツリーが構築されたときに発火します。外部リソースの読み込みを待たずに実行できるので、スクリプトの初期化処理によく使われます。


document.addEventListener("DOMContentLoaded", () => {
  console.log("DOMの読み込みが完了しました。");
  const button = document.getElementById("myButton");
  button.addEventListener("click", () => {
    alert("ボタンがクリックされました!");
  });
});

このように、DOMが使える状態になったらすぐにスクリプトを実行できるので、ユーザーの操作に素早く対応できます。

2. loadイベントとは?

2. loadイベントとは?
2. loadイベントとは?

loadイベントは、ページ内のすべてのリソース、例えば画像、スタイルシート、iframeなどが完全に読み込まれたあとに発火します。ページ全体の読み込み完了を確認したい場合に使います。


window.addEventListener("load", () => {
  console.log("ページ全体の読み込みが完了しました。");
  const images = document.querySelectorAll("img");
  console.log("画像の数:", images.length);
});

画像が多いページではloadイベントの発火が遅れることがあります。ユーザーにすぐインタラクションを提供したい場合はDOMContentLoadedを使う方が適しています。

3. DOMContentLoadedとloadの使い分け

3. DOMContentLoadedとloadの使い分け
3. DOMContentLoadedとloadの使い分け

簡単に使い分けをまとめると次の通りです。

  • ページのHTML構造だけを操作したいとき → DOMContentLoaded
  • 画像や外部リソースの読み込み完了を待ってから処理したいとき → load

例えば、ページの初期化処理やボタンのクリックイベントの設定はDOMContentLoadedで十分です。一方で、ページ内のすべての画像を確認してレイアウトを調整したい場合はloadを使うと安全です。

4. 注意点とおすすめの書き方

4. 注意点とおすすめの書き方
4. 注意点とおすすめの書き方

非同期的にHTMLや画像が読み込まれる現代のWebでは、イベントのタイミングを正しく理解することが重要です。以下の点に注意しましょう。

  • JavaScriptをheadに書く場合はDOMContentLoadedでDOMを操作する。
  • 外部画像や大きなメディアファイルの読み込みに依存する処理はloadを使う。
  • 両方のイベントを混同すると、処理が早すぎたり遅すぎたりするのでタイミングを意識する。

正しいイベントを選ぶことで、ユーザーに快適な操作体験を提供できます。

カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptのfor文の書き方を初心者向けにやさしく解説
New2
JavaScript
JavaScriptの関数でよくあるエラーとその解決法まとめ
New3
JavaScript
JavaScriptのイベント処理でよくあるエラーとその対処法
New4
JavaScript
JavaScriptの純粋関数(pure function)と副作用の違いを理解しよう
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのマウスイベントの使い方(click, mouseoverなど)
No.3
Java&Spring記事人気No3
JavaScript
JavaScriptのtoStringとString関数の違いを初心者向けに解説
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptの純粋関数(pure function)と副作用の違いを理解しよう
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptのDOMContentLoadedとloadイベントの違いを理解しよう
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptで文字列をforループで1文字ずつ処理する方法!初心者向け解説
No.7
Java&Spring記事人気No7
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptの始め方:開発環境の構築手順【初心者向け】