1. 程式人生 > >window.event的相容寫法

window.event的相容寫法

1.在HTML中新增事件

<div class="left" onclick="goLeft(event)"></div>
function goLeft() {
    alert(e.srcElement || e.target);
}
  • IE8及以下不支援target,支援srcElement
  • FF瀏覽器必須傳參event才能獲取到事件物件,IE瀏覽器和谷歌瀏覽器不用傳參,直接使用window.event即可獲取

如果某些情況下不能傳參event,也可以通過以下方式在函式體內獲取:
var event = window.event||arguments.callee.caller.arguments[0];

2.在JS中新增事件

document.getElementsByClassName('left')[0].onclick = function(e) {
    alert(e.srcElement || e.target);
}
  • FF瀏覽器用一個引數來接收事件物件
  • IE8及以下不支援getElementsByClassName,可用getElementById的方式

3.在JQuery中新增事件

$(".left").click(function(e) {
    alert(e.target);
});
  • JQuery已經做好了相容,直接使用即可