HTML DOM 事件
HTML DOM 事件允許Javascript在HTML文檔元素中注冊(cè)不同事件處理程序。
事件通常與函數(shù)結(jié)合使用,函數(shù)不會(huì)在事件發(fā)生前被執(zhí)行!(如用戶點(diǎn)擊按鈕)。
提示: 在 W3C 2 級(jí) DOM 事件中規(guī)范了事件模型。
HTML DOM 事件
DOM: 指明使用的 DOM 屬性級(jí)別。
鼠標(biāo)事件
鍵盤事件
框架/對(duì)象(Frame/Object)事件
屬性 |
描述 |
DOM |
onabort
|
圖像的加載被中斷。 ( <object>) |
2 |
onbeforeunload
|
該事件在即將離開頁面(刷新或關(guān)閉)時(shí)觸發(fā) |
2 |
onerror
|
在加載文檔或圖像時(shí)發(fā)生錯(cuò)誤。 ( <object>,<body>和 <frameset>) |
|
onhashchange
|
該事件在當(dāng)前 URL 的錨部分發(fā)生修改時(shí)觸發(fā)。 |
|
onload
|
一張頁面或一幅圖像完成加載。 |
2 |
onpageshow
|
該事件在用戶訪問頁面時(shí)觸發(fā) |
|
onpagehide
|
該事件在用戶離開當(dāng)前網(wǎng)頁跳轉(zhuǎn)到另外一個(gè)頁面時(shí)觸發(fā) |
|
onresize
|
窗口或框架被重新調(diào)整大小。 |
2 |
onscroll
|
當(dāng)文檔被滾動(dòng)時(shí)發(fā)生的事件。 |
2 |
onunload
|
用戶退出頁面。 (<body> 和 <frameset>) |
2 |
表單事件
屬性 |
描述 |
DOM |
onblur
|
元素失去焦點(diǎn)時(shí)觸發(fā) |
2 |
onchange
|
該事件在表單元素的內(nèi)容改變時(shí)觸發(fā)( <input>, <keygen>, <select>, 和 <textarea>) |
2 |
onfocus
|
元素獲取焦點(diǎn)時(shí)觸發(fā) |
2 |
onfocusin
|
元素即將獲取焦點(diǎn)時(shí)觸發(fā) |
2 |
onfocusout
|
元素即將失去焦點(diǎn)時(shí)觸發(fā) |
2 |
oninput
|
元素獲取用戶輸入時(shí)觸發(fā) |
3 |
onreset
|
表單重置時(shí)觸發(fā) |
2 |
onsearch
|
用戶向搜索域輸入文本時(shí)觸發(fā) (<input="search">) |
|
onselect
|
用戶選取文本時(shí)觸發(fā) ( <input> 和 <textarea>) |
2 |
onsubmit
|
表單提交時(shí)觸發(fā) |
2 |
剪貼板事件
屬性 |
描述 |
DOM |
oncopy
|
該事件在用戶拷貝元素內(nèi)容時(shí)觸發(fā) |
|
oncut
|
該事件在用戶剪切元素內(nèi)容時(shí)觸發(fā) |
|
onpaste
|
該事件在用戶粘貼元素內(nèi)容時(shí)觸發(fā) |
|
打印事件
拖動(dòng)事件
事件 |
描述 |
DOM |
ondrag
|
該事件在元素正在拖動(dòng)時(shí)觸發(fā) |
|
ondragend
|
該事件在用戶完成元素的拖動(dòng)時(shí)觸發(fā) |
|
ondragenter
|
該事件在拖動(dòng)的元素進(jìn)入放置目標(biāo)時(shí)觸發(fā) |
|
ondragleave
|
該事件在拖動(dòng)元素離開放置目標(biāo)時(shí)觸發(fā) |
|
ondragover
|
該事件在拖動(dòng)元素在放置目標(biāo)上時(shí)觸發(fā) |
|
ondragstart
|
該事件在用戶開始拖動(dòng)元素時(shí)觸發(fā) |
|
ondrop
|
該事件在拖動(dòng)元素放置在目標(biāo)區(qū)域時(shí)觸發(fā) |
|
多媒體(Media)事件
事件 |
描述 |
DOM |
onabort
|
事件在視頻/音頻(audio/video)終止加載時(shí)觸發(fā)。 |
|
oncanplay
|
事件在用戶可以開始播放視頻/音頻(audio/video)時(shí)觸發(fā)。 |
|
oncanplaythrough
|
事件在視頻/音頻(audio/video)可以正常播放且無需停頓和緩沖時(shí)觸發(fā)。 |
|
ondurationchange
|
事件在視頻/音頻(audio/video)的時(shí)長(zhǎng)發(fā)生變化時(shí)觸發(fā)。 |
|
onemptied |
當(dāng)期播放列表為空時(shí)觸發(fā) |
|
onended
|
事件在視頻/音頻(audio/video)播放結(jié)束時(shí)觸發(fā)。 |
|
onerror
|
事件在視頻/音頻(audio/video)數(shù)據(jù)加載期間發(fā)生錯(cuò)誤時(shí)觸發(fā)。 |
|
onloadeddata
|
事件在瀏覽器加載視頻/音頻(audio/video)當(dāng)前幀時(shí)觸發(fā)觸發(fā)。 |
|
onloadedmetadata
|
事件在指定視頻/音頻(audio/video)的元數(shù)據(jù)加載后觸發(fā)。 |
|
onloadstart
|
事件在瀏覽器開始尋找指定視頻/音頻(audio/video)觸發(fā)。 |
|
onpause
|
事件在視頻/音頻(audio/video)暫停時(shí)觸發(fā)。 |
|
onplay
|
事件在視頻/音頻(audio/video)開始播放時(shí)觸發(fā)。 |
|
onplaying
|
事件在視頻/音頻(audio/video)暫?;蛘咴诰彌_后準(zhǔn)備重新開始播放時(shí)觸發(fā)。 |
|
onprogress
|
事件在瀏覽器下載指定的視頻/音頻(audio/video)時(shí)觸發(fā)。 |
|
onratechange
|
事件在視頻/音頻(audio/video)的播放速度發(fā)送改變時(shí)觸發(fā)。 |
|
onseeked
|
事件在用戶重新定位視頻/音頻(audio/video)的播放位置后觸發(fā)。 |
|
onseeking
|
事件在用戶開始重新定位視頻/音頻(audio/video)時(shí)觸發(fā)。 |
|
onstalled
|
事件在瀏覽器獲取媒體數(shù)據(jù),但媒體數(shù)據(jù)不可用時(shí)觸發(fā)。 |
|
onsuspend
|
事件在瀏覽器讀取媒體數(shù)據(jù)中止時(shí)觸發(fā)。 |
|
ontimeupdate
|
事件在當(dāng)前的播放位置發(fā)送改變時(shí)觸發(fā)。 |
|
onvolumechange
|
事件在音量發(fā)生改變時(shí)觸發(fā)。 |
|
onwaiting
|
事件在視頻由于要播放下一幀而需要緩沖時(shí)觸發(fā)。 |
|
動(dòng)畫事件
過渡事件
其他事件
事件 |
描述 |
DOM |
onmessage |
該事件通過或者從對(duì)象(WebSocket, Web Worker, Event Source 或者子 frame 或父窗口)接收到消息時(shí)觸發(fā) |
|
onmousewheel |
已廢棄。 使用onwheel 事件替代 |
|
ononline
|
該事件在瀏覽器開始在線工作時(shí)觸發(fā)。 |
|
onoffline
|
該事件在瀏覽器開始離線工作時(shí)觸發(fā)。 |
|
onpopstate |
該事件在窗口的瀏覽歷史(history 對(duì)象)發(fā)生改變時(shí)觸發(fā)。 |
|
onshow
|
該事件當(dāng) <menu> 元素在上下文菜單顯示時(shí)觸發(fā) |
|
onstorage |
該事件在 Web Storage(HTML 5 Web 存儲(chǔ))更新時(shí)觸發(fā) |
|
ontoggle
|
該事件在用戶打開或關(guān)閉 <details> 元素時(shí)觸發(fā) |
|
onwheel
|
該事件在鼠標(biāo)滾輪在元素上下滾動(dòng)時(shí)觸發(fā) |
|
事件對(duì)象
常量
靜態(tài)變量 |
描述 |
DOM |
CAPTURING-PHASE |
當(dāng)前事件階段為捕獲階段(3) |
1 |
AT-TARGET |
當(dāng)前事件是目標(biāo)階段,在評(píng)估目標(biāo)事件(1) |
2 |
BUBBLING-PHASE |
當(dāng)前的事件為冒泡階段 (2) |
3 |
屬性
屬性 |
描述 |
DOM |
bubbles
|
返回布爾值,指示事件是否是起泡事件類型。 |
2 |
cancelable
|
返回布爾值,指示事件是否可擁可取消的默認(rèn)動(dòng)作。 |
2 |
currentTarget
|
返回其事件監(jiān)聽器觸發(fā)該事件的元素。 |
2 |
eventPhase |
返回事件傳播的當(dāng)前階段。 |
2 |
target
|
返回觸發(fā)此事件的元素(事件的目標(biāo)節(jié)點(diǎn))。 |
2 |
timeStamp
|
返回事件生成的日期和時(shí)間。 |
2 |
type
|
返回當(dāng)前 Event 對(duì)象表示的事件的名稱。 |
2 |
方法
方法 |
描述 |
DOM |
initEvent() |
初始化新創(chuàng)建的 Event 對(duì)象的屬性。 |
2 |
preventDefault() |
通知瀏覽器不要執(zhí)行與事件關(guān)聯(lián)的默認(rèn)動(dòng)作。 |
2 |
stopPropagation() |
不再派發(fā)事件。 |
2 |
目標(biāo)事件對(duì)象
方法
方法 |
描述 |
DOM |
addEventListener() |
允許在目標(biāo)事件中注冊(cè)監(jiān)聽事件(IE8= attachEvent()) |
2 |
dispatchEvent() |
允許發(fā)送事件到監(jiān)聽器上 (IE8 =fireEvent()) |
2 |
removeEventListener() |
運(yùn)行一次注冊(cè)在事件目標(biāo)上的監(jiān)聽事件(IE8 =detachEvent()) |
2 |
事件監(jiān)聽對(duì)象
方法
方法 |
描述 |
DOM |
handleEvent() |
把任意對(duì)象注冊(cè)為事件處理程序 |
2 |
文檔事件對(duì)象
方法
方法 |
描述 |
DOM |
createEvent() |
|
2 |
鼠標(biāo)/鍵盤事件對(duì)象
屬性
屬性 |
描述 |
DOM |
altKey
|
返回當(dāng)事件被觸發(fā)時(shí),"ALT" 是否被按下。 |
2 |
button
|
返回當(dāng)事件被觸發(fā)時(shí),哪個(gè)鼠標(biāo)按鈕被點(diǎn)擊。 |
2 |
clientX
|
返回當(dāng)事件被觸發(fā)時(shí),鼠標(biāo)指針的水平坐標(biāo)。 |
2 |
clientY
|
返回當(dāng)事件被觸發(fā)時(shí),鼠標(biāo)指針的垂直坐標(biāo)。 |
2 |
ctrlKey
|
返回當(dāng)事件被觸發(fā)時(shí),"CTRL" 鍵是否被按下。 |
2 |
Location
|
返回按鍵在設(shè)備上的位置 |
3 |
charCode
|
返回onkeypress事件觸發(fā)鍵值的字母代碼。 |
2 |
key
|
在按下按鍵時(shí)返回按鍵的標(biāo)識(shí)符。 |
3 |
keyCode
|
返回onkeypress事件觸發(fā)的鍵的值的字符代碼,或者 onkeydown 或 onkeyup 事件的鍵的代碼。 |
2 |
which
|
返回onkeypress事件觸發(fā)的鍵的值的字符代碼,或者 onkeydown 或 onkeyup 事件的鍵的代碼。 |
2 |
metaKey
|
返回當(dāng)事件被觸發(fā)時(shí),"meta" 鍵是否被按下。 |
2 |
relatedTarget
|
返回與事件的目標(biāo)節(jié)點(diǎn)相關(guān)的節(jié)點(diǎn)。 |
2 |
screenX
|
返回當(dāng)某個(gè)事件被觸發(fā)時(shí),鼠標(biāo)指針的水平坐標(biāo)。 |
2 |
screenY
|
返回當(dāng)某個(gè)事件被觸發(fā)時(shí),鼠標(biāo)指針的垂直坐標(biāo)。 |
2 |
shiftKey
|
返回當(dāng)事件被觸發(fā)時(shí),"SHIFT" 鍵是否被按下。 |
2 |
方法
方法 |
描述 |
W3C |
initMouseEvent() |
初始化鼠標(biāo)事件對(duì)象的值 |
2 |
initKeyboardEvent() |
初始化鍵盤事件對(duì)象的值 |
3 |
更多建議: