event对象
IE 中可以直接使用 window.event 对象,而 FF 中则不可以
解决方法一
| var theEvent = window.event | arguments.callee.caller.arguments[0]; |
解决方法二
将 event 作为参数来传递(事件中也要传递event)
<input onkeydown=function(event)/>
function test(event) {
var event = event || window.event;
//do Something
}
关于IE下的event.srcElement和火狐下的event.target
火狐下的e.target相当于ie下的event.srcElement,表示产生事件的源。
event.keyCode 和 event.which
Mozilla 下的 event.which 与 IE 下的 event.keyCode 相当。
PS.Mozilla下好像也有keyCode?
event.x, event.y[IE] 和 event.pageX,event.pageY[Moz]
IE中取鼠标点击的绝对位置,使用event对象的event.x和event.y
Moz中取鼠标点击的绝对位置,使用event对象的event.pageX和event.pageY
event.offsetX,event.offsetY[IE]和event.pageX,event.pageY[Moz]
IE中取鼠标点击的相对位置,使用event对象的event.offsetX和event.offsetY
Moz中取鼠标点击的相对位置,使用event对象的event.layerX和event.layerY
事件绑定
事件绑定上Mozilla用addEventListener,removeEventListener
对应IE的attachEvent,detatchEvent
林秀栋的技术博客