美文网首页
JS事件冒泡和事件捕捉

JS事件冒泡和事件捕捉

作者: 2019吖 | 来源:发表于2018-12-04 15:35 被阅读0次

    子标签和父标签都绑定事件,点击子标签,先触发子的绑定事件,再触发父的绑定事件,叫做事件冒泡

    反之,先触发父,后触发子,叫做事件捕捉

    事件捕捉通过以下的第三个参数来设置,true为事件捕捉,false为事件冒泡,默认是false。

    document.getElementById("parent").addEventListener("click",function(e){ alert("parent事件被触发,"+e.target.id); },true)

    W3C使用event.stopPropagation()起到阻止捕获和冒泡阶段中当前事件的进一步传播。IE则是使用e.cancelBubble = true。

    W3C使用event.preventDefault()可以取消默认事件。IE则是使用e.returnValue = false。

    事件委托利用事件的冒泡原理来实现的,事件从最深的节点开始,然后逐步向上传播事件。

    1、提高JavaScript性能。事件委托可以显著的提高事件的处理速度,减少内存的占用。

    2、动态的添加DOM元素,不需要因为元素的改动而修改事件绑定。

    事件委托把事件绑定到父组件上,然后用浏览器的事件ev获取他的属性target,这个target是事件目标节点,它有个属性叫nodeName,以此来获取子标签名,从而处理操作。

    讲的非常好的事件冒泡事件捕捉事件委托

    相关文章

      网友评论

          本文标题:JS事件冒泡和事件捕捉

          本文链接:https://www.haomeiwen.com/subject/ftmmcqtx.html