事件冒泡和事件捕获
1.addEventListener的第三个参数决定了是事件捕获还是事件冒泡
true:表示注册的事件在捕获阶段触发
false:表示注册的事件在冒泡阶段触发-----默认值
2.事件冒泡:
当一个元素的事件触发了,同样的事件会在该元素的所有祖辈元素中一次触发,事件冒泡(从里往外).
3.事件捕获:
同事件冒泡相反,从外往里
误解:元素并不是只有注册了事件,才会有事件冒泡和事件捕获
4.事件流
三个阶段; 1.事件捕获 2.事件目标[事件源] 3.事件冒泡
注意点: 一个元素的事件,不会再两个阶段都触发
再实际使用中,有时候我们会需要阻止事件冒泡,可以使用e.stopPropagation();
附阻止浏览器默认行为的方法:
函数内return false ; e.preventDefault();----e是事件对象event