冒泡,捕获,

104 阅读1分钟

一、什么是冒泡事件。

冒泡:从开始事件开始,往上冒泡直到页面的最上一级标签。

二、什么是捕获事件

捕获:从不精确的对象到最精准的对象。

样式:

点击
demo.onclick = () => { console.log(111); }

demo.onclick = () => { console.log(222); }

同一个元素有两个onclick执行第二个。但 $('#demo').click,demo.addEventListener('click',函数)会连个都执行。

//有子集不会触发事件 支持冒泡事件。
demo.onmouseenter = function() {
console.log("移入。。");
}
demo.onmouseleave = function() {
console.log("移出。。");
}

//如果有子集会再次触发事件  不支持冒泡事件。
demo.onmouseover = function() {
console.log("移入。。");
}
demo.onmouseout = function() {
console.log("移出。。");
}

捕获:

btn.addEventListener('click',function() {
console.log(111);
},true)
demo.addEventListener('click',function() {
console.log(444);
},true)

flase为默认,当参数为true时,打印444,111