事件对象
在IE/Opera中,是window.event,而在Firefox中,是event
event = event || window.event;
事件的对象,在IE中是window.event.srcElement,在Firefox中是event.target,而在Opera中则两者都支持。
event.target || window.event.srcElement
事件绑定
不同浏览器中运作一致;处理事件时,this关键字引用的是当前元素
事件对象参数(e)仅非IE浏览器可用
element.onclick = function(e){
// ...
};
最后的参数设置:false (冒泡) 或 true (捕获);
在事件处理函数内部,this关键字引用当前元素;事件对象总是可以通过处理函数的第一个参数(e)捕获;
IE不支持
element.attachEvent('onclick', function(){
// ...
});
IE仅支持事件捕获的冒泡阶段触发;事件监听函数内的this关键字指向了window对象
事件对象仅存在与window.event参数中;事件必须以ontype的形式命名,比如,onclick而非click;仅IE可用
element.attachEvent('onclick', function(){
// ...
});
解除事件
除IE
element.removeEventListener('click', function(e){
// ...
}, false);
IE
element.detachEvent('onclick', function(){
// ...
});