JavaScript DOM事件流
事件流描述的是从页面中接收事件的顺序。
事件发生时会在元素节点之间按照特定的顺序传播,这个传播过程即 DOM 事件流。
DOM 事件流分为3个阶段:
-
捕获阶段
从根元素
HTML到事件源。某个元素的某类型事件被触发,先触发根元素,再向子一级,直到事件源。
-
当前目标阶段
-
冒泡阶段
从事件源向父级,一直到根元素
HTML。某个元素的某类型事件被触发,父元素同类型事件也会被触发。

注意:
-
JS 代码中只能执行捕获或者冒泡其中的一个阶段。
-
onclick和attachEvent只能得到冒泡阶段。 -
addEventListener(type, listener[, useCapture])第三个参数如果是true,表示在事件捕获阶段调用事件处理程序;如果是
false(不写默认就是false),表示在事件冒泡阶段调用事件处理程序。 -
实际开发中更关注事件冒泡。
-
有些事件是没有冒泡的,比如
onblur、onfocus、onmouseenter、onmouseleave。 -
事件冒泡有时候会带来麻烦,有时候又会帮助很巧妙的做某些事件。
-
React使用事件委托的方式处理点击事件。
事件委托:一个事件理应绑定到相应需要触发的元素上,但却将该事件绑定到其父元素上,利用事件冒泡原理,触发其事件。
📘📘欢迎在我的博客上访问:
https://lzxjack.top/
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
