DOM事件流与事件委托

96 阅读1分钟

DOM事件流

image.png

事件捕获:从html到small

事件冒泡:从small到html

事件委托

把子级的事件委托给父级来处理

假设页面中ul下有多个li,要达到点击哪个li就删除哪个li,此时需要给每个li都绑定点击事件,这样就会很麻烦,代码很冗余

利于事件委托能很好地解决这个问题,给ul绑定事件,点击li也能触发事件,注意:事件是在冒泡阶段触发的

使用e.target(阻止事件冒泡)

<ul>
      <li>1</li>
      <li>2</li>
      <li>3</li>
      <li>4</li>
</ul>
    <script>
      let ul = document.querySelector('ul')
      ul.onclick = function (e) {
        ul.removeChild(e.target)
      }
    </script>