取消默认行为和阻止传播

阻止传播

阻止捕获和冒泡阶段中当前事件的进一步传播

1
2
event.stopPropagation();
// event.cancelBubble = true

如果有多个相同类型事件的事件监听函数绑定到同一个元素,当该类型的事件触发时,它们会按照被添加的顺序执行。如果其中某个监听函数执行了 event.stopImmediatePropagation() 方法,则当前元素剩下的监听函数将不会被执行。

1
event.stopImmediatePropagation();


取消默认行为

通知 Web 浏览器不要执行与事件关联的默认动作

1
2
3
event.preventDefault();
// event.returnValue = false;
// javascript的return false只会阻止默认行为

注:如果 Event 对象的 cancelable 属性是 fasle,那么就没有默认动作,或者不能阻止默认动作。


event与target

  1. 事件

    IE里的event全局变量(window.event,随时可用

    firefox里的event要用参数引导才能用,是运行时的临时变量(event

  2. 事件的目标

    在IE中是window.event.srcElement

    Firefox中是event.target