标签:
1.注册事件
(1)HTML事件处理函数
<input type="button" onclick="alert(‘hello‘);test()"/>
这里的事件处理函数就是引号内的alert(‘hello‘);test()不要经常看到onclick="test()"而以为事件处理函数是test方法
(2)DOM0形式
btn.onclick = test;
function test(){
......
}
(3)DOM2形式
IE: btn.attachEvent("onclick",test);
chrome/firefox: btn.addEventListener("click",test,false);
2.this的指向
(1)HTML事件处理函数: this指代触发事件的html元素
(2)DOM0形式: this指代触发事件的html元素
(3)DOM2形式:
IE: 指代window对象
chrome/firefox: 指代触发事件的html元素
3.事件对象Event
(1)HTML事件处理函数
<input type="button" onclick="alert(event)"/>变量event中保存着event对象
(2)DOM0形式
IE: btn.onclick = function(){alert(window.event);}
event对象作为window对象的属性存在
chrome:btn.onclick = function(event){alert(event);};
event对象将作为参数传递到事件处理程序中
(3)DOM2形式
IE: btn.attachEvent("onclick",function(event){....});
即可以通过将event对象作为参数传递给事件处理程序,也可以通过window.event来访问
chrome: btn.addEventListener("click",function(event){...},false);
event对象作为参数传递给事件处理程序
4.事件对象的属性和方法
IE:
cancelBubble Boolean类型 是否取消冒泡行为
returnValue Boolean类型 是否取消默认行为
srcElement 事件的触发对象
chrome:
bubbles Boolean类型 是否冒泡
cancelable Boolean类型 是否能取消默认行为
defaultPrevented Boolean类型 默认类型是否已取消
currentTarget 注册事件处理程序的元素
target 触发事件的元素
preventDefault() 取消默认行为
stopPropagation() 阻止事件冒泡
stopImmediatePropagation() 阻止冒泡 同时自己的监听某一事件的所有处理函数都停止工作
标签:
原文地址:http://www.cnblogs.com/pmx-pmx/p/5193425.html