在大部分浏覽器中,當一個事件處理器被觸發時,名為Event的類實例會作為第一個參數傳入處理器中。而一直占據主流地位的ie卻以自己專的方式行事,將Event實例保存到一個名為event的全局屬性中。
復制代碼 代碼如下:
if (!event) event=window.event;
上面的語句用來檢測event參數是否為undefined或者null,如果是的話把window的event屬性賦值給它,從而消除了浏覽器差異。
為了獲取目標元素的引用,在標准兼容的浏覽器中使用target屬性,在ie中則使用srcElement屬性,通過對象檢測來處理這種不一致性
復制代碼 代碼如下:
var target=(event.target) ? event.target : event.srcElement;
這個語句檢查event.target的定義是否存在,如果存在,就把它的值賦給局部變量target;否則,將event.srcElement賦值給target。