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 当媒体已暂停但预期会恢复时,发生此事件。