Open xxxgitone opened 7 years ago
event.stopImmediatePropagation()
这个方法和event.stopPropagation()类似,该方法一般用于当有多个事件绑定在同一个元素的时候
如果某个元素有多个相同类型事件的事件监听函数,则当该类型的事件触发时,多个事件监听函数将按照顺序依次执行.
如果某个监听函数执行了 event.stopImmediatePropagation()方法,则除了该事件的冒泡行为被阻止之外(event.stopPropagation方法的作用),该元素绑定的后序相同类型事件的监听函数的执行也将被阻止.
<div> <button type="button">按钮</button> </div>
document.querySelector('button').addEventListener('click', function(e) { console.log('button click1') e.stopImmediatePropagation() }) document.querySelector('button').addEventListener('click', function() { console.log('button click2') }) document.querySelector('div').addEventListener('click', function() { console.log('div click') }) // button click1
这个方法和event.stopPropagation()类似,该方法一般用于当有多个事件绑定在同一个元素的时候
如果某个元素有多个相同类型事件的事件监听函数,则当该类型的事件触发时,多个事件监听函数将按照顺序依次执行.
如果某个监听函数执行了 event.stopImmediatePropagation()方法,则除了该事件的冒泡行为被阻止之外(event.stopPropagation方法的作用),该元素绑定的后序相同类型事件的监听函数的执行也将被阻止.