0级DOM函数
分为2个:一是在标签内写onclick事件spa
二是在JS写onlicke=function(){}函数code
1)blog
<input id="myButton" type="button" value="Press Me" onclick="alert('thanks');" >
2)事件
document.getElementById("myButton").onclick = function () { alert('thanks'); }
如下是分割线rem
1级DOM--(为何没有1级DOM)get
DOM级别1于1998年10月1日成为W3C推荐标准。1级DOM标准中并无定义事件相关的内容,因此没有所谓的1级DOM事件模型。在2级DOM中除了定义了一些DOM相关的操做以外还定义了一个事件模型 ,这个标准下的事件模型就是咱们所说的2级DOM事件模型 input
2级DOMio
只有一个:监听方法,有两个方法用来添加和移除事件处理程序:addEventListener()和removeEventListener()。function
它们都有三个参数:第一个参数是事件名(如click);
第二个参数是事件处理程序函数;
第三个参数若是是true则表示在捕获阶段调用,为false表示在冒泡阶段调用。
document.getElementById("myTest").attachEvent("onclick", function(){alert(1)});
//等价于
document.getElementById("myTest").addEventListener("click", function(){alert(1)}, false);
只有2级DOM包含3个事件:事件捕获阶段、处于目标阶段和事件冒泡阶段
<span> <a></a> </span>
点击a后capturing(捕捉)阶段事件传播会从document-> span->a,而后发生在a,最后bubbling(冒泡)阶段事件传播会从a->span->document 。
1.事件冒泡(经常使用)
IE中采用的事件流是事件冒泡,先从具体的接收元素,而后逐步向上传播到不具体的元素。
2.事件捕获(少用)
Netscapte采用事件捕获,先由不具体的元素接收事件,最具体的节点最后才接收到事件。
3.DOM事件流