22_事件委托.html 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <div class="box">
  10. <div class="box1">项目一</div>
  11. <div class="box2">项目二</div>
  12. <div class="box3">项目三</div>
  13. <div class="box4">项目四</div>
  14. <div class="box5">项目五</div>
  15. </div>
  16. <button id="btn">添加项目</button>
  17. <script>
  18. // var aBox = document.getElementsByClassName("box")[0].getElementsByTagName("div");
  19. var aBox = document.getElementsByClassName("box")[0].children;
  20. var oBtn = document.getElementById("btn");
  21. var oBox = document.getElementsByClassName("box")[0];
  22. // for(var i=0;i<aBox.length;i++){
  23. // aBox[i].addEventListener("click",function(){
  24. // console.log(this.innerText);
  25. // })
  26. // }
  27. // 事件委托 通过给父元素绑定事件 来处理内部子元素事件
  28. oBox.addEventListener("click",function(e){
  29. console.log(e.target.innerText);
  30. })
  31. oBtn.addEventListener("click",function(){
  32. var oDiv = document.createElement("div");
  33. oDiv.innerText = "项目六";
  34. oBox.appendChild(oDiv);
  35. })
  36. </script>
  37. </body>
  38. </html>