HTML5 事件屬性

HTML5 事件屬性是全域性的,可以應用於大多數元素。

HTML5 中的事件屬性

當某些事件發生時,以下事件屬性可以應用於執行 JavaScript 的大多數元素,但有一些例外情況,例如,在 <head> 部分中找到的元素,例如 <title><base><link> 等等。

視窗事件

window 物件相關的事件 (適用於標記): <body>

屬性 描述
onafterprint 指令碼 列印相關文件後觸發。
onbeforeprint 指令碼 在列印相關文件之前觸發。
onbeforeunload 指令碼 在解除安裝文件之前觸發。
onerror 指令碼 發生文件錯誤時觸發。
onhashchange 指令碼 當文件 URL 的片段識別符號部分(即符號(#)後面的 URL 部分)發生更改時觸發。
onload 指令碼 文件載入完畢後觸發。
onMessage 指令碼 訊息事件發生時觸發,即當使用者傳送跨文件訊息或使用 postMessage() 方法從工作人員傳送訊息時。請參閱 HTML5 Web Workers
onoffline 指令碼 網路連線失敗並且瀏覽器開始離線工作時觸發。
ononline 指令碼 當網路連線返回並且瀏覽器開始線上工作時觸發。
onpagehide 指令碼 頁面被隱藏時觸發,例如當使用者移動到另一個網頁時。
onpageshow 指令碼 在顯示頁面時觸發,例如當使用者導航到網頁時。
onpopstate 指令碼 在對活動歷史記錄進行更改時觸發。
onResize 指令碼 調整瀏覽器視窗大小時觸發。
onstorage 指令碼 更新 Web 儲存 區域時觸發。
onunload 指令碼 在解除安裝文件或關閉瀏覽器視窗之前立即觸發。

表格活動

由於使用者與 HTML 表單控制元件互動而發生的事件。

屬性 描述
onblur 指令碼 元素失去焦點時觸發。
onchange 指令碼 更改元素的值或狀態時觸發。
onfocus 指令碼 元素獲得焦點時觸發。
oninput 指令碼 當使用者更改元素的值時觸發。
oninvalid 指令碼 在表單驗證期間,當 submittable 元素不滿足其約束時觸發。
onreset 指令碼 使用者重置表單時觸發。
onselect 指令碼 在選擇某些文字或使用者更改當前選擇時觸發。
onsearch 指令碼 當使用者在搜尋輸入欄位中寫入內容時觸發。
onsubmit 指令碼 提交表單時觸發。

滑鼠事件

由於使用者與指標裝置(如滑鼠)互動而發生的事件:

屬性 描述
onclick 指令碼 當使用者單擊元素上的滑鼠左鍵時觸發。
onfocus 指令碼 使用者雙擊元素時觸發。
oncontextmenu 指令碼 當使用者通過右鍵單擊元素觸發上下文選單時觸發。
ondrag 指令碼 使用者拖動元素時觸發。該 ondrag 事件觸發整個拖動操作。
ondragend 指令碼 當使用者在拖動操作結束時釋放滑鼠按鈕時觸發。
ondragenter 指令碼 當使用者將元素拖動到有效的放置目標時觸發。
ondragleave 指令碼 在拖動操作期間元素離開有效放置目標時觸發。
ondragover 指令碼 在有效放置目標上拖動元素時觸發。
ondragstart 指令碼 使用者開始拖動文字選擇或所選元素時觸發。
ondrop 指令碼 在拖放操作期間釋放滑鼠按鈕時觸發,即拖動拖動元素時觸發。
onmousedown 指令碼 在元素上按下滑鼠按鈕時觸發。
onmousemove 指令碼 當使用者將滑鼠指標移動到元素上時觸發。
onmouseout 指令碼 當使用者將滑鼠指標移動到元素邊界之外時觸發。
onmouseover 指令碼 使用者將滑鼠指標移動到元素上時觸發。
onmouseup 指令碼 當使用者在元素上方釋放滑鼠按鈕時觸發。
onmousewheel 指令碼 不推薦使用該 onwheel 屬性。
onscroll 指令碼 當使用者通過滾動元素的滾動條滾動元素的內容時觸發。
onshow 指令碼 將事件觸發到具有屬性的元素時觸發。 contextmenu contextmenu
ontoggle 指令碼 使用者開啟或關閉元素時觸發。 <details>
onwheel 指令碼 當使用者通過在元素上向上或向下滾動滑鼠滾輪來滾動元素的內容時觸發。

鍵盤事件

使用者與鍵盤互動時發生的事件:

屬性 描述
onkeydown 指令碼 使用者按下某個鍵時觸發。
onkeypress 指令碼 使用者按下字母數字鍵時觸發。
onkeyup 指令碼 使用者釋放金鑰時觸發。

剪貼簿事件

與修改剪貼簿相關的事件,即複製,剪下和貼上:

屬性 描述
oncopy 指令碼 使用者複製元素或選擇時將其觸發,並將其新增到系統剪貼簿。
oncut 指令碼 從文件中刪除元素或選擇並將其新增到系統剪貼簿時觸發。
onpaste 指令碼 使用者貼上資料時將觸發,將資料從系統剪貼簿傳輸到文件。

媒體活動

處理嵌入 HTML 文件中的媒體元素時發生的事件,例如和元素: <audio> <video>

屬性 描述
onabort 指令碼 播放中止時觸發,但不是由於錯誤。
oncanplay 指令碼 當有足夠的資料可用於播放媒體時會觸發,至少幾幀,但需要進一步緩衝。
oncanplaythrough 指令碼 當整個媒體可以播放到最後而不需要停止進一步緩衝時觸發。
oncuechange 指令碼 當元素中的文字跟蹤提示發生更改時觸發。 <track>
ondurationchange 指令碼 媒體持續時間發生變化時觸發。
onemptied 指令碼 當媒體元素重置為其初始狀態時觸發,或者由於載入期間的致命錯誤,或者因為 load() 呼叫該方法來重新載入它。
onended 指令碼 到達播放結束時觸發。
onerror 指令碼 在獲取媒體資料時發生錯誤時觸發。
onloadeddata 指令碼 在當前播放位置載入媒體資料時觸發。
onloadedmetadata 指令碼 當媒體的後設資料(如持續時間和尺寸)完成載入時觸發。
onloadstart 指令碼 開始載入媒體時觸發。
onpause 指令碼 使用者或以程式設計方式暫停播放時觸發。
onplay 指令碼 在暫停後(即 play() 請求方法時)開始播放媒體時觸發。
onplaying 指令碼 音訊或視訊開始播放時觸發。
onprogress 指令碼 下載媒體資料時定期觸發以指示進度。
onratechange 指令碼 播放速率或速度增加或減少時觸發,如慢動作或快進模式。
onseeked 指令碼 搜尋操作結束時觸發。
onseeking 指令碼 移動當前播放位置時觸發。
onstalled 指令碼 下載意外停止時觸發。
onsuspend 指令碼 故意停止載入介質時觸發。
ontimeupdate 指令碼 當播放位置改變時觸發,例如當使用者快進到不同的播放位置時。
onvolumechange 指令碼 更改音量或播放靜音或取消靜音時觸發。
onwaiting 指令碼 播放停止時觸發,因為視訊資源的下一幀不可用。

注意: 上述事件屬性應用於所有 HTML 元素,但它們對所有元素都不起作用。例如,只有媒體元素才會收到瀏覽器觸發的 volumechange 事件。