事件的冒泡与捕获

事件的冒泡和捕获分别由微软和网景公司提出,这两个概念的提出都是为了解决页面中的事件流(事件发生顺序)的问题。


1.事件冒泡

微软首先提出了事件冒泡,事件按照从最特定的事件目标到最不特定的事件目标,也可以简单理解为事件从内到外开始发生。


当我们点击绿色快,即id为son的div,会依次打印出3,2,1

2.事件捕获

网景提出了另一种事件流,名字为事件捕获,事件从最不精确的对象开始出发,与冒泡事件恰恰相反,事件从外到内开始出发。

这个时候我们需要在js代码中的addEventListener后加入一个true值,如果不写,则boolen值默认为false,采用冒泡事件

这个时候我们再点击绿色快,则依次打印出1,2,3

3.阻止事件捕获

e.stopPropagation()

这个时候我们再点击div3,则只能打印出3,e.stopPropagation() api会阻止事件冒泡的发生。

你可能感兴趣的:(事件的冒泡与捕获)