一、event對象
IE 中可以直接使用 window.event 對象,而 FF 中則不可以,解決方法之一如下:
var theEvent = window.event || arguments.callee.caller.arguments[0];
第二種是將 event 作為參數來傳遞:
function test(event) {
二、關于IE下的event.srcElement和火狐下的event.target
火狐下的e.target相當于ie下的event.srcElement,表示產生事件的源。
例子:
document.onclick = function(e){var theEvent = window.event || e;var srcElement = theEvent.srcElement;if (!srcElement) {srcElement = theEvent.target;}}
三、event.keyCode 和event.which
Mozilla下的event.which與IE下的event.keyCode相當。
代碼:
JScript 代碼 復制//IE
<input type="text" nkeyPRess="doIt()">
<script language="javascript">
function doIt()
{
alert(event.keyCode);
}
</script>
//火狐
<input type="text" nkeypress="doIt(event)">
<script language="Javascript">
function doIt(oEvent)
{
alert(oEvent.which)
}
</script>
四、event.x,event.y[IE]和event.pageX,event.pageY[Moz]
IE中取鼠標點擊的絕對位置,使用event對象的event.x和event.yMoz中取鼠標點擊的絕對位置,使用event對象的event.pageX和event.pageY所以為了兼容,需要自己做處理
五、event.offsetX,event.offsetY[IE]和event.pageX,event.pageY[Moz]
IE中取鼠標點擊的相對位置,使用event對象的event.offsetX和event.offsetYMoz中取鼠標點擊的相對位置,使用event對象的event.layerX和event.layerY所以為了兼容,需要自己做處理,
六、事件綁定
事件綁定上Mozilla用addEventListener,removeEventListener對應IE的attachEvent,detatchEvent
新聞熱點
疑難解答