什么是JavaScript中的事件冒泡和捕获?
事件冒泡是当一个元素嵌套在第二个元素内并且两个元素都注册了同一事件的侦听器(例如单击)时调用事件处理程序的顺序。冒泡时,事件首先由最里面的元素捕获和处理,然后传播到外面的元素。
通过捕获,事件首先被最外面的元素捕获并传播到内部元素。
让我们看两个例子。
对于以下两个示例,创建以下HTML-
示例
<div id='outer' style='background-color:red;display:inline-block;padding:50px;'> Outer Div <div id='inner' style='background-color:yellow;display:inline-block;padding:50px;'> Inner Div </div> </div>
1.事件冒泡
document.querySelector('#outer').addEventListener('click', e => {
console.log('Outer div is clicked');
}, false);
document.querySelector('#inner').addEventListener('click', e => {
console.log('Inner div is clicked');
}, false);如果运行上面的代码并单击内部div,则将获得日志-
Inner div is clicked Outer div is clicked
2.事件捕获
document.querySelector('#outer').addEventListener('click', e => {
console.log('Outer div is clicked');
}, true);
document.querySelector('#inner').addEventListener('click', e => {
console.log('Inner div is clicked');
}, true);如果运行上面的代码并单击内部div,则将获得日志-
Outer div is clicked Inner div is clicked
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短