<body> <divclass="father"> <divclass="son"></div> </div> <script> var father = document.querySelector('.father'); var son = document.querySelector('.son'); son.addEventListener('click', function (e) { console.log('我是 son 元素上被绑定的第一个监听函数'); }, true); son.addEventListener('click', function (e) { console.log('我是 son 元素上被绑定的第二个监听函数'); }, true); father.addEventListener('click', function (e) { console.log('我是 father 元素上被绑定的第一个监听函数'); // 阻止事件捕获和冒泡 e.stopPropagation(); }, true); father.addEventListener('click', function (e) { console.log('我是 father 元素上被绑定的第二个监听函数'); }, true); </script> </body> </html>
<body> <divclass="father"> <divclass="son"></div> </div> <script> var father = document.querySelector('.father'); var son = document.querySelector('.son'); son.addEventListener('click', function (e) { console.log('我是 son 元素上被绑定的第一个监听函数'); }, true); son.addEventListener('click', function (e) { console.log('我是 son 元素上被绑定的第二个监听函数'); }, true); father.addEventListener('click', function (e) { console.log('我是 father 元素上被绑定的第一个监听函数'); // 阻止事件捕获和冒泡 // e.stopPropagation(); e.stopImmediatePropagation(); }, true); father.addEventListener('click', function (e) { console.log('我是 father 元素上被绑定的第二个监听函数'); }, true); </script> </body> </html>