JS事件物件

2021-10-01 04:08:13 字數 1264 閱讀 6632

1. 什麼是事件物件

官方解釋:event 物件代表事件的狀態,比如鍵盤按鍵的狀態、滑鼠的位置、滑鼠按鈕的狀態。

比如:誰繫結了這個事件。

滑鼠觸發事件的話,會得到滑鼠的相關資訊,如滑鼠位置。

鍵盤觸發事件的話,會得到鍵盤的相關資訊,如按了哪個鍵。

2. 事件物件的使用

事件觸發發生時就會產生事件物件,並且系統會以實參的形式傳給事件處理函式。

所以,在事件處理函式中宣告1個形參用來接收事件物件。

例子:

eventtarget.

onclick

=function

(event)

eventtarget.

addeventlistener

('click'

,function

(event)

)// event誰傳遞的?

// 函式的形參是由誰傳遞的? 呼叫者傳遞

// 事件處理程式是誰呼叫的。

// js引擎呼叫,div.onclick(e);

// 當事件發生之後,js引擎將事件相關資訊封裝為乙個物件,e。呼叫事件處理程式時將e傳遞

// var obj =

// }

// obj.onclick(e);

應用場景:什麼時候新增形參e:事件處理程式中需要用到事件物件,那麼就新增形參e

3. 事件物件的相容性處理

事件物件本身的獲取存在相容問題:

標準瀏覽器中是瀏覽器給方法傳遞的引數,只需要定義形參 e 就可以獲取到。

在 ie6~8 中,瀏覽器不會給方法傳遞引數,如果需要的話,需要到 window.event 中獲取查詢。

語法:

相容寫法:

e = e || window.event;

這個利用了短路邏輯運算:

如果瀏覽器支援e,而e轉boolean為true,則直接返回e

如果瀏覽器不支援e,會去識別window.event,然後返回window.event

**:

123<

/div>

var div = document.

queryselector

('div');

div.

onclick

=function

(e)<

/script>4. 事件物件的屬性和方法

JS 事件物件

在觸發dom上的某個事件時,會產生乙個事件物件event。這個物件中包含著所有與事件有關的資訊。包括導致事件的元素,事件的型別以及其他與特定事件相關的資訊。所有瀏覽器都支援event物件,event物件會傳入dom0級,dom2級,html指定,的事件處理程式中,但支援的方式不同,所以也會涉及跨瀏覽...

js 事件物件

事件繫結的格式 元素節點.on 事件型別 function 就是乙個事件物件 obtn 也是乙個物件,所以我們把上面中的.onclick function 看作是 obtn物件的乙個方法 函式 我們把這個事件函式寫在這以後,什麼事件呼叫的呢?我們都知道,只有按鈕被點選時才會呼叫這個事件函式,所以這個...

js事件物件

1 進入部落格 2 html event物件 在js中呼叫未被定義的變數,一般會報錯。我覺得這也是為什e e event中event要放在後面的原因。如果寫成window.event 其放在前面應該也沒關係 3 event物件 屬性和方法 屬性 button 判斷按滑鼠上的哪個鍵 0 沒有按鍵 1 ...