ホームページ > 記事 > ウェブフロントエンド > バブリングで配信できないイベントは何ですか?
<div id="outer"> <input id="inner" type="text"> </div> <script> var outer = document.getElementById("outer"); var inner = document.getElementById("inner"); outer.addEventListener("focus", function() { console.log("outer focus"); }); inner.addEventListener("focus", function(event) { event.stopPropagation(); // 阻止冒泡传递 console.log("inner focus"); }); inner.addEventListener("blur", function(event) { event.stopPropagation(); // 阻止冒泡传递 console.log("inner blur"); }); outer.addEventListener("blur", function() { console.log("outer blur"); }); </script>上記のコードでは、内部テキスト入力ボックスがフォーカスを取得すると、内部フォーカス イベントがトリガーされ、イベントが stopPropagation() を介して外部にバブリングされるのが防止されます。 method.div 要素を使用すると、外部フォーカス イベントはトリガーされません。
<div id="container" style="height: 200px; overflow: auto;"> <div id="content" style="height: 1000px;"></div> </div> <script> var container = document.getElementById("container"); var content = document.getElementById("content"); container.addEventListener("scroll", function() { console.log("container scroll"); }); content.addEventListener("scroll", function(event) { event.stopPropagation(); // 阻止冒泡传递 console.log("content scroll"); }); </script>上記のコードでは、コンテンツ領域がスクロールすると、コンテンツ領域のスクロール イベントがトリガーされ、イベント バブリングがコンテナ要素に渡されるのを防ぎます。 stopPropagation() メソッドを使用するため、コンテナのスクロール イベントはトリガーされません。
window.addEventListener("load", function() { console.log("page loaded"); }); window.addEventListener("unload", function() { console.log("page unloaded"); });上記のコードでは、ページがロードされるときにロード イベントがトリガーされ、ページがアンロードされようとしているときにアンロード イベントがトリガーされます。泡立って他の要素に伝達されることはありません。 概要上記のイベントに加えて、input、change、reset、submit、mouseenter、mouseleave、その他のイベントなど、バブルできないイベントがいくつかあります。これらのイベントを使用する場合は、不要な問題を避けるためにイベント配信メカニズムに注意を払う必要があります。イベント配信の原理を理解すると、Web ページでのイベント応答をより適切に制御および管理し、ユーザー エクスペリエンスを向上させることができます。
以上がバブリングで配信できないイベントは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。