Event 對象

Event 對象

DOM 中的所有事件對象都基于 Event 對象。

因此,所有其他事件對象(如 MouseEventKeyboardEvent)都可以訪問 Event 對象的屬性和方法。

事件屬性和方法

屬性/方法 描述
bubbles 返回特定事件是否為冒泡事件。
cancelBubble 設置或返回事件是否應該向上層級進行傳播。
cancelable 返回事件是否可以阻止其默認操作。
composed 指示該事件是否可以從 Shadow DOM 傳遞到一般的 DOM。
composedPath() 返回事件的路徑。
createEvent() 創建新事件。
currentTarget 返回其事件偵聽器觸發事件的元素。
defaultPrevented 返回是否為事件調用 preventDefault() 方法。
eventPhase 返回當前正在評估事件流處于哪個階段。
isTrusted 返回事件是否受信任。
preventDefault() 如果可以取消事件,則將其取消,不執行屬于該事件的默認操作。
stopImmediatePropagation() 防止同一事件的其他偵聽器被調用。
stopPropagation() 防止事件在事件流中進一步傳播。
target 返回觸發事件的元素。
timeStamp 返回創建事件的時間(相對于紀元的毫秒數)。
type 返回事件名稱。

事件類型

這些事件類型屬于 Event 對象:

事件 描述
abort 媒體加載中止時發生該事件。
afterprint 當頁面開始打印時,或者關閉打印對話框時,發生此事件。
beforeprint 即將打印頁面時發生此事件。
beforeunload 在文檔即將被卸載之前發生此事件。
canplay 當瀏覽器可以開始播放媒體時,發生此事件。
canplaythrough 當瀏覽器可以在不停止緩沖的情況下播放媒體時發生此事件。
change 當form元素的內容、選擇的內容或選中的狀態發生改變時,發生此事件
error 當加載外部文件時發生錯誤后,發生此事件。
fullscreenchange 當元素以全屏模式顯示時,發生此事件。
fullscreenerror 當元素無法在全屏模式下顯示時,發生此事件。
input 當元素獲得用戶輸入時,發生此事件。
invalid 當元素無效時,發生此事件。
load 在對象已加載時,發生此事件。
loadeddata 媒體數據加載后,發生此事件。
loadedmetadata 加載元數據(比如尺寸和持續時間)時,發生此事件。
message 在通過此事件源接收消息時,發生此事件。
offline 當瀏覽器開始脫機工作時,發生此事件。
online 當瀏覽器開始在線工作時,發生此事件。
open 當打開與事件源的連接時,發生此事件。
pause 當媒體被用戶暫停或以編程方式暫停時,發生此事件。
play 當媒體已啟動或不再暫停時,發生此事件。
playing 在媒體被暫停或停止以緩沖后播放時,發生此事件。
progress 當瀏覽器正處于獲得媒體數據的過程中時,發生此事件。
ratechange 媒體播放速度改變時發生此事件。
resize 調整文檔視圖的大小時發生此事件。
reset 重置表單時發生此事件。
scroll 滾動元素的滾動條時發生此事件。
search 當用戶在搜索字段中輸入內容時,發生此事件。
seeked 當用戶完成移動/跳到媒體中的新位置時,發生該事件。
seeking 當用戶開始移動/跳到媒體中的新位置時,發生該事件。
select 用戶選擇文本后(對于<input>和<textarea>)發生此事件
show 當 <menu> 元素顯示為上下文菜單時,發生此事件。
stalled 當瀏覽器嘗試獲取媒體數據但數據不可用時,發生此事件。
submit 在提交表單時發生此事件。
suspend 當瀏覽器有意不獲取媒體數據時,發生此事件。
timeupdate 當播放位置更改時發生此事件。
toggle 當用戶打開或關閉 <details> 元素時,發生此事件。
unload 頁面卸載后(對于 <body>),發生此事件。
waiting 當媒體已暫停但預期會恢復時,發生此事件。