{category}

JavaScript - イベントの伝播

バブリングフェーズ

イベント

意味 イベント伝播の最後


バブリングフェーズとは?

イベント伝播の最後の段階。イベントは対象の要素から最上位の親要素まで逆伝播します。

バブリングフェーズの具体的な使い方

バブリングフェーズでのイベント伝播の例

<div id="parent" style="padding: 20px; background-color: #f0f0f0;">
  親要素
  <div id="child" style="padding: 20px; background-color: #d0d0d0;">
    子要素
    <button id="button">クリックしてください</button>
  </div>
</div>
<script>
function setupBubblingExample() {
  const parent = document.getElementById('parent');
  const child = document.getElementById('child');
  const button = document.getElementById('button');

  parent.addEventListener('click', () => alert('親要素がクリックされました'));
  child.addEventListener('click', () => alert('子要素がクリックされました'));
  button.addEventListener('click', () => alert('ボタンがクリックされました'));
}
setupBubblingExample();
</script>

この例では、ボタン、その親の子要素、さらにその親要素にクリックイベントリスナーを設定しています。ボタンをクリックすると、イベントがバブリングフェーズで伝播し、ボタン、子要素、親要素の順にアラートが表示されます。

バブリングフェーズに関するよくある質問

Q. バブリングフェーズとは?
A. バブリングフェーズは、DOMイベントの伝播において、イベントが発生した要素から親要素へと上向きに伝わっていく段階です。
Q. イベント伝播を止めるには?
A. event.stopPropagation()メソッドを使用することで、イベントの伝播を停止できます。
Q. キャプチャリングとの違いは?
A. キャプチャリングはトップレベルの要素から対象要素へ下向きに伝播し、バブリングは逆に対象要素から上向きに伝播します。

バブリングフェーズが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、JavaScriptのバブリングフェーズやanimationstart、mouseenter、event.currentTarget、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


JavaScriptを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!JavaScriptはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

animationstart

CSSアニメーションが開始されたときのイベント。

種類: その他のイベント

mouseenter

マウスが要素の上に乗ったときに発生する。

種類: ユーザーインタラクションイベント

event.currentTarget

リスナーの要素

種類: イベントオブジェクトとプロパティ

Number.MAX_VALUE

JS最大の数値

種類: Number

date.getHours()

時を取得(0-23)

種類: Date