事件流程以及dom2级事件绑定

2022-10-15,,,

事件流程分为三个阶段:捕获阶段目标阶段冒泡阶段

捕获阶段:事件从最顶层元素开始执行,一层层往下,直到精确元素。

目标阶段:事件在精确元素上执行。

冒泡阶段:事件从精确元素开始执行,一层层往上,直到顶层元素(注:高级浏览器的顶层元素是window,ie8以下的浏览器顶层元素是document)

 

 dom2级事件绑定方式 

 高级浏览器绑定方式:
元素.addeventlistener(type, handler, boolean);             //绑定
  type 事件类型字符串  不带on
  handler 事件处理函数
  boolean 布尔值  如果值为true 该绑定是绑定到捕获阶段 否则绑定到冒泡阶段

元素.removeeventlistener(type, handler, boolean);      //移除绑定
  type 事件类型字符串  不带on
  handler 事件处理函数
  boolean 布尔值  如果值为true 是移除捕获阶段 否则移除冒泡阶段

ie8以下浏览器绑定方式(不支持addeventlistener )

元素.attachevent(type, handler)            //绑定
  type 事件类型字符串  带on
  handler 事件处理函数
元素.detachevent(type, handler)         //移除绑定
  type 事件类型字符串  带on
  handler 事件处理函数
(注:ie8以下浏览器绑定方式没有第三个参数,表示不能绑定到捕获阶段)

 
dom2级事件可以重复绑定,在高级浏览器中的执行顺序是从上至下。在ie8以下浏览器中是倒叙执行,但是当attachevent和dom0级一起执行时,会先执行0级,然后再倒叙执行。

 

《事件流程以及dom2级事件绑定.doc》

下载本文的Word格式文档,以方便收藏与打印。