XML DOM Event 對象

Event 對象表示有關事件的信息。

Event 對象

Event 對象的屬性提供了有關事件的細節(例如,事件在其上發生的元素)。Event 對象的方法可以控制事件的傳播。

2 級 DOM Events 標準定義了一個標準的事件模型,它被除 IE 以外的所有現代瀏覽器所實現,而 IE 定義了自己的、不兼容的模型。這個參考頁列出了標準 Event 對象的屬性以及 IE Event 對象對象的屬性。

注意:在標準事件模型中,Event 對象傳遞給事件句柄函數;但是在 IE 事件模型中,它被存儲在 Window 對象的 event 屬性中。

在標準事件模型中,Event 的各種子接口定義了額外的屬性,它們提供了和特定事件類型相關的細節。在 IE 事件模型中,只有一種類型的 Event 對象,它用于所有類型的事件。

標準 Event 屬性

下面列出了 2 級 DOM 事件標準定義的屬性。

屬性 描述 IE F O W3C
bubbles 返回布爾值,指示事件是否是起泡事件類型。 No 1 9 Yes
cancelable 返回布爾值,指示事件是否可擁可取消的默認動作。 No 1 9 Yes
currentTarget 返回其事件監聽器觸發該事件的元素。 No 1 9 Yes
eventPhase 返回事件傳播的當前階段。       Yes
target 返回觸發此事件的元素(事件的目標節點)。 No 1 9 Yes
timeStamp 返回事件生成的日期和時間。 No 1 9 Yes
type 返回當前 Event 對象表示的事件的名稱。 6 1 9 Yes

標準 Event 方法

下面列出了 2 級 DOM 事件標準定義的方法。IE 的事件模型不支持這些方法:

方法 描述 IE F O W3C
initEvent() 初始化新創建的 Event 對象的屬性。 No 1 9 Yes
preventDefault() 通知瀏覽器不要執行與事件關聯的默認動作。 No 1 9 Yes
stopPropagation() 終止事件在傳播過程的捕獲、目標處理或起泡階段進一步傳播。調用該方法后,該節點上處理該事件的處理程序將被調用,事件不再被分派到其他節點。 No 1 9 Yes

IE 屬性

IE 并不支持(至少在 IE 7 中)標準的 DOM 事件模型,并且 IE 的 Event 對象定義了一組完全不同的屬性。

IE 事件模型并沒有為不同的事件定義繼承層級,因此所有和任何事件的類型相關的屬性都在這里列出。

屬性 描述
cancelBubble 如果事件句柄想阻止事件傳播到包容對象,必須把該屬性設為 true。
fromElement 對于 mouseover 和 mouseout 事件,fromElement 引用移出鼠標的元素。
keyCode

對于 keypress 事件,該屬性聲明了被敲擊的鍵生成的 Unicode 字符碼。

對于 keydown 和 keyup 事件,它指定了被敲擊的鍵的虛擬鍵盤碼。

虛擬鍵盤碼可能和使用的鍵盤的布局相關。

offsetX,offsetY 發生事件的地點在事件源元素的坐標系統中的 x 坐標和 y 坐標。
returnValue

如果設置了該屬性,它的值比事件句柄的返回值優先級高。

把這個屬性設置為 fasle,可以取消發生事件的源元素的默認動作。

srcElement 對于生成事件的 Window 對象、Document 對象或 Element 對象的引用。
toElement 對于 mouseover 和 mouseout 事件,該屬性引用移入鼠標的元素。
x,y 事件發生的位置的 x 坐標和 y 坐標,它們相對于用 CSS 動態定位的最內層包容元素。