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" )
网友评论