JavaScript事件流主要有冒泡事件和捕获事件
DOM事件流同时支持者两种事件捕获
现在统一标准是先捕获再冒泡
addEventListener有三个参数:第三个参数就是设定为事件捕获还是冒泡
true为事件捕获
false为事件冒泡
element.addEventListener(event, function, useCapture)
例如:
Button.addEventListener("click",function(e){ // ...... },false);
事件冒泡
比如子元素点击了, 没有触发点击事件的话就会冒泡到上一层父元素触发其点击事件
阻止事件冒泡使用e.stopPropagation()ie下使用cancelBubble = true
事件捕获
是从上往下层捕获事件的, 父元素先触发子元素后触发
阻止事件捕获使用e.preventDefault(), ie下设置window.event.returnValue = false
网友评论