HTML DOM Events

发送DOM事件是为了将发生的有趣事情通知代码。

事件通常与功能结合使用,并且在事件发生之前(例如,用户单击按钮时)不会执行该功能。

事件可以表示一切,从基本的用户交互到呈现模型中发生的事情的自动通知。

活动名称描述事件类型
abort当资源加载已中止时发生该事件UiEvent, Event
afterprint当相关文档已开始打印或打印预览已关闭时,发生此事件Event
animationendCSS动画完成时发生AnimationEvent
animationiteration重复CSS动画时发生此事件AnimationEvent
animationstartCSS动画开始时发生此事件AnimationEvent
beforeprint当相关文档将要打印或预览以进行打印时,将发生此事件Event
beforeunload当窗口,文档及其资源即将被卸载时发生该事件UiEvent, Event
blur当元素失去焦点(不会冒泡)时发生该事件FocusEvent
canplay当浏览器可以开始播放媒体时(当它有足够的缓冲来开始播放时),将发生此事件。Event
canplaythrough当浏览器可以在不停止缓冲的情况下播放媒体时发生此事件Event
change当表单元素,选择或选中状态的内容更改时(对于<input>,<select>和<textarea>),将发生此事件。Event
click当用户单击元素时发生事件MouseEvent
contextmenu当用户右键单击某个元素以打开上下文菜单时,将发生该事件MouseEvent
copy当用户复制元素的内容时发生该事件ClipboardEvent
cut当用户剪切元素的内容时发生该事件ClipboardEvent
dblclick当用户双击元素时发生事件MouseEvent
drag拖动元素时发生事件DragEvent
dragend当用户完成拖动元素时,发生该事件DragEvent
dragenter当拖动的元素进入放置目标时,将发生事件DragEvent
dragleave当拖动的元素离开放置目标时发生事件DragEvent
dragover当拖动的元素在放置目标上方时发生事件DragEvent
dragstart当用户开始拖动元素时发生该事件DragEvent
drop当将拖动的元素放置在放置目标上时,发生事件DragEvent
durationchange更改媒体的持续时间时发生此事件Event
ended该事件在媒体播放到尽头时发生(对于“感谢收听”之类的消息很有用)Event
error资源加载失败时发生ProgressEvent, UiEvent, Event
focus当元素已获得焦点时发生事件(不会冒泡)FocusEvent
focusin该事件在某个元素即将获得焦点时发生FocusEvent
focusout该事件在某个元素即将失去焦点时发生FocusEvent
fullscreenchange以全屏模式显示元素时发生事件Event
fullscreenerror当元素无法以全屏模式显示时,发生此事件Event
hashchange当URL的锚点部分发生更改时,将发生此事件HashChangeEvent
input当元素获得用户输入时发生事件InputEvent, Event
invalid当元素无效时发生Event
keydown该事件在用户按下某个键时发生KeyboardEvent
keypress当用户按下键时发生事件KeyboardEvent
keyup当用户释放键时发生该事件KeyboardEvent
load该事件在对象已加载时发生UiEvent, Event
loadeddata加载媒体数据时发生事件Event
loadedmetadata加载元数据(如维度和持续时间)时发生此事件Event
loadstart当浏览器开始查找指定的媒体时发生该事件ProgressEvent
message通过事件源接收到消息时发生事件Event
mousedown当用户在元素上按下鼠标按钮时,发生事件MouseEvent
mouseenter当指针移动到元素上时,发生该事件MouseEvent
mouseleave当指针从元素中移出时发生该事件MouseEvent
mousemove当指针在元素上方移动时发生该事件MouseEvent
mouseover当指针移动到元素或其子元素之一上时,发生此事件MouseEvent
mouseout当用户将鼠标指针移出某个元素或其子元素之一时,将发生此事件MouseEvent
mouseup当用户在元素上释放鼠标按钮时发生该事件MouseEvent
mousewheel不推荐使用。改用wheel事件WheelEvent
offline当浏览器开始脱机工作时发生该事件Event
online当浏览器开始在线工作时发生该事件Event
open打开与事件源的连接时,将发生该事件Event
pagehide当用户离开网页导航时发生该事件PageTransitionEvent
页面显示当用户导航到网页时发生事件PageTransitionEvent
paste当用户将某些内容粘贴到元素中时,发生该事件ClipboardEvent
pause当用户或以编程方式暂停媒体时,将发生该事件Event
play当媒体已启动或不再暂停时发生该事件Event
playing在暂停或停止缓冲媒体后播放媒体时发生该事件Event
popstate窗口的历史记录更改时发生该事件PopStateEvent
progress当浏览器正在获取媒体数据(下载媒体)的过程中发生该事件Event
ratechange更改媒体的播放速度时发生Event
resize调整文档视图大小时发生此事件UiEvent, Event
reset该事件在重置表单时发生Event
scroll滚动元素的滚动条时发生事件UiEvent, Event
search当用户在搜索字段中输入内容时(对于<input="search">),将发生此事件。Event
seeked当用户完成移动/跳至媒体中的新位置时发生该事件Event
seeking当用户开始移动/跳到媒体中的新位置时发生该事件Event
select用户选择某些文本(对于<input>和<textarea>)后,将发生此事件。UiEvent, Event
show当<menu>元素显示为上下文菜单时,事件发生Event
stalled当浏览器尝试获取媒体数据但数据不可用时,发生该事件Event
storage更新Web存储区域时发生该事件StorageEvent
submit该事件在提交表单时发生Event
suspend当浏览器有意不获取媒体数据时发生此事件Event
timeupdate当播放位置更改时(例如,当用户快速前进到媒体中的另一个点时)发生该事件Event
toggle该事件在用户打开或关闭<details>元素时发生Event
touchcancel该事件在触摸被中断时发生TouchEvent
touchend当手指从触摸屏上移开时发生该事件TouchEvent
touchmove当手指在屏幕上拖动时发生事件TouchEvent
touchstart当手指放在触摸屏上时发生事件TouchEvent
transitionendCSS转换完成时发生此事件TransitionEvent
unload该事件在文档或从属资源被卸载时发生UiEvent, Event
volumechange当媒体的音量已更改(包括将音量设置为“静音”)时发生该事件Event
waiting当媒体已暂停但预期会恢复时(如媒体暂停以缓冲更多数据时),将发生此事件Event
wheel当鼠标滚轮在元素上向上或向下滚动时,会发生此事件WheelEvent

HTML DOM事件属性

下表列出了DOM事件的属性:

属性描述事件类型
altKey返回在触发鼠标事件时是否按下了“ ALT”键MouseEvent
altKey返回触发键事件时是否按下了“ ALT”键KeyboardEvent, TouchEvent
animationName返回动画的名称AnimationEvent
bubbles返回特定事件是否为冒泡事件Event
button返回触发鼠标事件时按下的鼠标按钮MouseEvent
buttons返回触发鼠标事件时按下的鼠标按钮MouseEvent
cancelable返回事件是否可以阻止其默认操作Event
charCode返回触发onkeypress事件的键的Unicode字符代码KeyboardEvent
changeTouches返回状态在上一次触摸和此触摸之间改变的所有触摸对象的列表TouchEvent
clientX返回触发鼠标事件时鼠标指针相对于当前窗口的水平坐标MouseEvent, TouchEvent
clientY返回触发鼠标事件时鼠标指针相对于当前窗口的垂直坐标MouseEvent, TouchEvent
clipboardData返回一个对象,其中包含受剪贴板操作影响的数据ClipboardData
code返回触发事件的键的代码KeyboardEvent
composed返回事件是否组成Event
ctrlKey返回触发鼠标事件时是否按下了“ CTRL”键MouseEvent
ctrlKey返回触发键事件时是否按下了“ CTRL”键KeyboardEvent, TouchEvent
currentTarget返回其事件侦听器触发事件的元素Event
data返回插入的字符InputEvent
dataTransfer返回一个对象,其中包含要拖放/插入或删除的数据DragEvent, InputEvent
defaultPrevented返回是否为事件调用preventDefault()方法Event
deltaX返回鼠标滚轮的水平滚动量(x轴)WheelEvent
deltaY返回鼠标滚轮的垂直滚动量(y轴)WheelEvent
deltaZ返回Z轴的鼠标滚轮的滚动量WheelEvent
deltaMode返回一个数字,表示增量值(像素,线条或页面)的度量单位WheelEvent
detail返回一个数字,该数字指示鼠标被单击了多少次UiEvent
elapsedTime返回动画已运行的秒数AnimationEvent
elapsedTime返回过渡已运行的秒数 
eventPhase返回当前正在评估事件流的哪个阶段Event
inputType返回更改的类型(即“插入”或“删除”)InputEvent
isComposing返回事件的状态是否正在组成InputEvent, KeyboardEvent
isTrusted返回事件是否受信任Event
key返回事件表示的键的键值KeyboardEvent
key返回更改的存储项目的密钥StorageEvent
keyCode返回触发onkeypress事件的键的Unicode字符代码,或触发onkeydown或onkeyup事件的键的Unicode键代码。KeyboardEvent
location返回键盘或设备上按键的位置KeyboardEvent
lengthComputable返回进度的长度是否可以计算ProgressEvent
loaded返回已加载的工作量ProgressEvent
metaKey返回事件触发时是否按下了“ META”键MouseEvent
metaKey返回在触发键事件时是否按下了“元”键KeyboardEvent, TouchEvent
MovementX返回相对于上一个mousemove事件的位置的鼠标指针的水平坐标MouseEvent
MovementY返回相对于上一个mousemove事件的位置的鼠标指针的垂直坐标MouseEvent
newValue返回更改后的存储项目的新值StorageEvent
newURL更改哈希值后,返回文档的URLHasChangeEvent
offsetX返回鼠标指针相对于目标元素边缘位置的水平坐标MouseEvent
offsetY返回鼠标指针相对于目标元素边缘位置的垂直坐标MouseEvent
oldValue返回已更改存储项目的旧值StorageEvent
oldURL返回哈希更改之前的文档的URLHasChangeEvent
onemptied当发生不良情况并且媒体文件突然不可用(例如意外断开连接)时,将发生此事件 
pageX返回触发鼠标事件时鼠标指针相对于文档的水平坐标MouseEvent
pageY返回触发鼠标事件时鼠标指针相对于文档的垂直坐标MouseEvent
persisted返回网页是否被浏览器缓存PageTransitionEvent
propertyName返回与动画或过渡相关联的CSS属性的名称AnimationEvent, TransitionEvent
pseudoElement返回动画或过渡的伪元素的名称AnimationEvent, TransitionEvent
region
MouseEvent
relatedTargetReturns the element related to the element that triggered the mouse eventMouseEvent
relatedTarget返回与触发事件的元素相关的元素FocusEvent
repeat返回是否重复按住某个键KeyboardEvent
screenX返回触发事件时鼠标指针相对于屏幕的水平坐标MouseEvent
screenY返回触发事件时鼠标指针相对于屏幕的垂直坐标MouseEvent
shiftKey返回事件触发时是否按下了“ SHIFT”键MouseEvent
shiftKey返回触发键事件时是否按下了“ SHIFT”键KeyboardEvent, TouchEvent
state返回一个包含历史记录条目副本的对象PopStateEvent
storageArea返回一个表示受影响的存储对象的对象StorageEvent
target返回触发事件的元素Event
targetTouches返回所有与该表面接触以及touchstart事件发生在与当前目标元素相同的目标元素上的触摸对象的列表TouchEvent
timeStamp返回创建事件的时间(相对于纪元的毫秒数)Event
total返回将要加载的工作总量ProgressEvent
touches返回当前与曲面接触的所有触摸对象的列表TouchEvent
transitionendCSS转换完成时发生此事件TransitionEvent
type返回事件的名称Event
url返回更改项目文档的URLStorageEvent
which返回触发鼠标事件时按下的鼠标按钮MouseEvent
which返回触发onkeypress事件的键的Unicode字符代码,或触发onkeydown或onkeyup事件的键的Unicode键代码。KeyboardEvent
view返回对发生事件的Window对象的引用UiEvent

HTML DOM事件方法

下表列出了DOM事件的方法:

方法描述事件类型
createEvent()创建一个新事件Event
getTargetRanges()返回一个包含目标范围的数组,该范围将受到插入/删除的影响InputEvent
getModifierState()返回一个包含目标范围的数组,该范围将受到插入/删除的影响MouseEvent
preventDefault()阻止浏览器执行所选元素的默认操作Event
stopImmediatePropagation()防止同一事件的其他侦听器被调用Event
stopPropagation()防止事件在事件流中进一步传播Event

相关参考

Javascript教程:Javascript事件

Javascript教程:事件监听器

Javascript教程:事件传播