了解事件流

原创
2016/06/13 15:14
阅读数 16

 一个事件在它的生命周期中要经历3个阶段:捕获、处理目标元素和冒泡

捕获:

但事件发生时,浏览器首先要找出是哪个元素触发了这个事件,这个元素又称为时间的目标元素(target)。浏览器会询问body元素与目标元素之间的所有元素,挨个检查它们是否定义有事件处理函数。在执行目标元素的事件处理函数之前,浏览器会先执行祖先元素绑定的事件处理函数。

处理目标元素:

这是3个阶段中最简单的一个。当捕获阶段完成,浏览器会触发执行绑定在目标元素该事件上的所有侦听函数。

冒泡:

处理完目标元素完成之后,浏览器开始向着body元素方向上行检查每个祖先元素(冒泡)浏览器会一个个询问这些元素是否绑定非捕获事件,因为不是所有旳事件都支持冒泡。我们可以检查事件的bubbles属性来查看事件是否支持冒泡。如果该属性值为true,则表示该事件支持冒泡,否则就不支持。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部