event對(duì)象獲取方法總結(jié)在google瀏覽器下測(cè)試
簡(jiǎn)介:
Event 對(duì)象代表事件的狀態(tài),比如事件在其中發(fā)生的元素、鍵盤按鍵的狀態(tài)、鼠標(biāo)的位置、鼠標(biāo)按鈕的狀態(tài)。 事件通常與函數(shù)結(jié)合使用,函數(shù)不會(huì)在事件發(fā)生前被執(zhí)行!
Event對(duì)象的獲取方法:
方法一:
例如:
function demo1(e){
var e = e || window.event;
//此種方法在ie中和google中可以不傳參數(shù)e也可以獲取到event,但是在火狐中必須在事件方法中傳遞event參數(shù)
//才可以獲取到event對(duì)象。
}
<input onclick = "demo1(event)" value="demo1"/>
方法二:通用的方便的方法(這種方法方便之處在于不用傳參數(shù))
例如:
function demo2(){
var e = arguments.callee.caller.arguments[0] || window.event;
//arguments.callee指的就是當(dāng)前的函數(shù)體
//arguments.callee.caller就是當(dāng)前函數(shù)的上級(jí)函數(shù)
//所以當(dāng)執(zhí)行onclick="demo2()"時(shí)arguments.callee就是demo2(),arguments.callee.caller就是function onclick ,
//onclick的第一個(gè)能數(shù)就是event,也就是arguments.callee.caller.arguments[0]這個(gè)。
}
<input onclick="demo2()" value="demo2"/>
詳細(xì)測(cè)試總結(jié):
一:萬能的同樣的方法是:傳遞參數(shù)event(實(shí)參必須寫event換其他名稱不行)方式。
二:window.event適用于ie和google瀏覽器火狐不支持。
三:arguments.callee.caller.arguments[0]僅火狐和google支持,ie不支持這種獲取方式。
從以上測(cè)試結(jié)果可知google瀏覽器支持以上各種獲取方式,屬于兼容性最強(qiáng)的一個(gè)瀏覽器。
相關(guān)文章
如何使用ImageDecoder API讓GIF圖片暫停播放
在本文中,我們介紹了如何使用ImageDecoder API來暫停GIF圖像的播放,雖然這需要一些JavaScript編程知識(shí),但它是一個(gè)非常強(qiáng)大的技術(shù),可以讓您對(duì)GIF圖像進(jìn)行各種高級(jí)操作,感興趣的朋友跟隨小編一起看看吧2023-06-06js實(shí)現(xiàn)兼容性好的微軟官網(wǎng)導(dǎo)航下拉菜單效果
這篇文章主要介紹了js實(shí)現(xiàn)兼容性好的微軟官網(wǎng)導(dǎo)航下拉菜單效果,涉及JavaScript基于鼠標(biāo)事件實(shí)現(xiàn)頁面樣式變換的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-09-09javascript實(shí)現(xiàn)貪吃蛇小游戲思路
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)貪吃蛇思路小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-0915個(gè)用于開發(fā)的TypeScript高級(jí)技巧分享
這篇文章主要來和大家分享一下15個(gè)用于開發(fā)的TypeScript高級(jí)技巧,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下2023-07-07