DOM0级和DOM2级事件

2018-06-16  本文已影响21人  一个疯子的喃喃自语

DOM0级事件模型

写法

1、在html中直接绑定
   <input type="button" onclick="fun()" />
2、通过js函数绑定
  var btn = document.getElementById(".btn"); btn.onclick = fun;
3、删除事件
  btn.onclick = null

  DOM0是最早期的事件模型,所有现代浏览器都支持,都以"on"开头,它不需等到js运行,因为它是写在元素上面的,但它只支持冒泡不支持捕获。

DOM2级事件模型

  咦?咋没有DOM1,因为一级DOM标准中没有定义事件相关的内容,所以就没有喽~ DOM2是W3C制定的标准模型,现代浏览器(除IE6-8之外的浏览器)都支持该模型。
"DOM2级事件"规定的事件流包括三个阶段:
  1、事件捕获阶段(capturing phase):事件从document一直向下传播到目标元素, 依次检查经过的节点是否绑定了事件监听函数,如果有则执行。
  2、处于目标阶段(capturing phase):事件到达目标元素, 触发目标元素的监听函数。
  3、事件冒泡阶段(bubbling phase):事件从目标元素冒泡到document, 依次检查经过的节点是否绑定了事件监听函数,如果有则执行。

IE事件模型

IE事件模型共有两个过程:

  IE的事件机制没有捕获阶段,事件流是非标准的,只有目标阶段和冒泡阶段。
事件绑定监听函数的方法:
attachEvent( "eventType","handler"),其中evetType为事件的类型,如onclick,注意要加’on’。
事件移除监听函数的方法:
detachEvent("eventType","handler" )

上一篇下一篇

猜你喜欢

热点阅读