一、什么是冒泡事件。
冒泡:从开始事件开始,往上冒泡直到页面的最上一级标签。
二、什么是捕获事件
捕获:从不精确的对象到最精准的对象。
样式:
点击
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