教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是事件對象?怎么獲取事件對象?

更新時間:2021年09月08日17時40分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓


當一個事件發(fā)生后,跟事件相關的一系列信息數(shù)據(jù)的集合都放到這個對象里面。這個對象就是even,只有有了事件,evem才會存在,它是系統(tǒng)自動創(chuàng)建的,不需要傳遞參數(shù)事件對象是事件--系列相關數(shù)據(jù)的集合,例如,鼠標單擊的事件對象,就包含了鼠標相關信息,如鼠標指針坐標等。如果是鍵盤事件,事件對象中就包含鍵盤事件的相關信息,例如,用戶按下了哪個鍵,事件對象中就會包括按下鍵的鍵值等相關信息。

雖然所有瀏覽器都支持事件對象event,但是不同的瀏覽器獲取事件對象的方式不同,標準瀏覽器中會將一個event對象直接傳人到事件處理程序中,而早期版本的IE瀏覽器6~IE8)中,僅能通過window.event才能獲取事件對象,語法格式如下。

var事件對象=window.event              //早期IE內(nèi)核瀏覽器

DOM對象,事件=function (event) ()     //W3C內(nèi)核瀏覽器

上述代碼中,因為在事件觸發(fā)時就會產(chǎn)生事件對象,并且系統(tǒng)會以實參的形式事件處理函數(shù)。所以,在事件處理函數(shù)中需要用一個形參來接收事件對象event接下來我們以獲取buttion按鈕單擊事件的事件對象為例進行代碼演示,示例代碼如下:

<buttonid="btn">獲取event對象</button>

<script>

var btn=document. getlementBYID('btn');

btn.onclick=function(e) {

var event=e|| window.event;  // 獲取事件對象的兼容處理

console,log(event);

};

</script>

上述代碼中,第3行代碼根據(jù)id屬性值獲取button按鈕的元素對象。第4~7行代碼追過動態(tài)綁定式為按鈕添加單擊事件。其中,事件處理函數(shù)中傳遞的參數(shù)e(參數(shù)名稱只要符合變量定義的規(guī)則即可)表示的就是事件對象event。第5行通過“或”運算符實現(xiàn)不同瀏覽器間獲取事件對象兼容的處理。若是標準瀏覽器,則可以直接通過e獲取事件對象;若是早期版本的IE瀏覽器(IE6~IE8)則需要通過window.event才能獲取事件對象。

最后執(zhí)行第6行代碼,在控制臺查看事件對象。在IE11的開發(fā)人員工具中,通過IE8兼容模式測試,效果如圖7-17(a)所示。在Chrome瀏覽器中的效果如圖7-17(b)所示。

獲取事件對象

圖7-17獲取事件對象

由圖一17可知Gr洲覽器單擊事件觸發(fā)的是限標對象MueEe展開該對象即可看到當前對象含有的所有屬性和方法。




猜你喜歡:

什么是事件委托?JavaScript事件委托的實現(xiàn)原理

Watch機制的通知狀態(tài)與事件類型簡介

Swing事件處理的過程是怎樣的?

Java事件監(jiān)聽器的工作步驟介紹

傳智教育前端與移動開發(fā)培訓

0 分享到:
和我們在線交談!