ホームページ > 記事 > ウェブフロントエンド > JSバブリングイベントの使い方
今回は、バブリングイベントの概要とその使用方法について詳しく説明します。サンプルデモをご覧ください。
バブルイベント
(1) バブルは、子孫要素のイベントがトリガーされると、その祖先要素の同じイベントもトリガーされることを意味します。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #box1{ width: 300px; height: 300px; background-color: #00BFFF; } #s1{ background-color: yellow; } </style> <script type="text/javascript"> window.onload=function(){ var box1=document.getElementById("box1"); var s1=document.getElementById("s1"); var body=document.body; //冒泡就是后代元素的事件被触发的时候,其祖先元素的相同事件也会被触发;冒泡是向上导向的 //如果我们不需要冒泡,可以通过事件对象来取消冒泡; box1.onclick=function(){ alert("box1"); } s1.onclick=function(event){ // event.cancelBubble=true;//可以通过cancelBubble alert("s1"); } body.onclick=function(){ alert("body"); } }; </script> </head> <body> <p id="box1"> 我是p <span id="s1">我是span</span> </p> </body> </html>
//バブルの練習;イベントの委任
イベントの委任: バブリングを通じて複数の応答イベントを作成する問題を解決するには、同じイベントの祖先要素をバインドし、子孫要素をイベントにバインドします。イベント イベント オブジェクトの target 属性は、トリガー イベント オブジェクトを表すために使用されます。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .box1{ width: 400px; height: 200px; background-color: aquamarine; } </style> <script type="text/javascript"> window.onload=function(){ //获取超链接 var ul=document.getElementById("s1"); var lias=document.getElementsByTagName("a"); var bnt01=document.getElementById("btn01"); //为a绑定一个事件 // for(var i=0;i<lias.length;i++) // { // lias[i].onclick=function(){ // alert("超链接"); // }; // } bnt01.onclick=function(){ //创建超链接; var li=document.createElement("li"); li.innerHTML="<a href='#' class='sn'>新建超链接</a>"; ul.appendChild(li); } ul.onclick=function(event){ //只有点击超链接的时候才执行,其他的地方不执行; if(event.target.className=="sn") alert("超链接"); } }; </script> </head> <body> <button id="btn01">创建一个超链接</button> <p class="box1"> <ul id="s1" style="background-color:red ;"> <li><a href="#" class="sn">超链接一</a></li> <li><a href="#" class="sn">超链接二</a></li> <li><a href="#" class="sn">超链接三</a></li> </ul> </p> </body> </html>これらの事例を読んだ後は、このメソッドを習得したと思います。さらに興味深い情報については、PHP の他の関連記事に注目してください。中国語のサイトです!
関連書籍:
以上がJSバブリングイベントの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。