美文网首页
事件冒泡与事件捕获

事件冒泡与事件捕获

作者: 小淘气_嘻 | 来源:发表于2018-07-20 08:58 被阅读0次
var evt = e ? e:window.event;
window.event? window.event.cancelBubble = true : evt.stopPropagation();
window.event? window.event.returnValue = false : evt.preventDefault();

阻止默认动作的发生

  • 先查看event.cancelable属性来判断一个事件的默认动作是够可以被取消。若为false,则preventDefault方法无效。
  • event.preventDefault() 在事件触发后的任何阶段调用该方法来取消该事件
  • preventDefault方法会引起event.defaultPrevented属性变为true.

事件冒泡

  • 事件是默认的;
  • event.stopPropagation():终止事件再传播过程中的捕获、目标处理或冒泡的进一步传播;阻止冒泡、捕获和处于目标阶段
  • 冒泡最终会冒泡到这个页面的window
  • 事件冒泡是相对独立的

事件捕获

  • addEventListener('click',fn,true); 第三个参数确定是否捕获。为true为事件捕获方式获得
  • DOM3级的stopImmediatePropagation()阻止事件捕获,也可以阻止事件冒泡。

DOM事件流(DOM2级)

  • 事件捕获阶段
  • 处于目标阶段
  • 事件冒泡阶段

IE 提出事件冒泡流
Netscape提出事件捕获流

相关文章

网友评论

      本文标题:事件冒泡与事件捕获

      本文链接:https://www.haomeiwen.com/subject/jzytmftx.html