HTML事件包含Window事件、document事件、Form事件、Keybord事件、Mouse事件和Media事件。

 

1. window事件

window事件是针对window对象触发的事件。

语法:window.addEventListener()

属性类型描述备注
loadEvent页面结束加载之后触发
resizeEvent当浏览器窗口被调整大小时触发-
errorEvent在错误发生时触发-
copyClipboardEvent文本复制时触发元素上可以监听该事件,不过会冒泡到 window
pasteClipboardEvent文本粘贴时触发元素上可以监听该事件,不过会冒泡到 window
cutClipboardEvent文本剪切时触发元素上可以监听该事件,不过会冒泡到 window
afterprintEvent文档打印之后触发-
beforeprintEvent文档打印之前触发-
beforunloadEvent文档卸载之前触发-
errorEvent 或者 ErrorEvent在错误发生时触发-
hashchangeMessageEvent当文档已改变时触发-
messageMessageEvent在消息被触发时触发 -
messageerrorMessageEvent读取消息异常时触发-
languagechangeEvent用户语言设置改变时触发-
onlineEvent当文档上线时触发-
offlineEvent当文档离线时触发-
pagehidePageTransitionEvent当窗口隐藏时触发-
pageshowPageTransitionEvent当窗口成为可见时触发-
popstatePopStateEvent当窗口历史记录改变时触发-
storageStorageEvent在 Web Storage 区域更新后触发-
unloadEvent一旦页面已下载时触发(或者浏览器窗口已被关闭)-
focusEvent 或者 FocusEvent元素聚焦时触发form 相关元素也可监听,不会冒泡至 window。不过事件类型为 FocusEvent
blurEvent 或者 FocusEvent元素失焦时触发form 相关元素也可监听,不会冒泡至 window,不过事件类型为 FocusEvent
unhandledrejectPromiseRejectionEvent异步错误未捕获时触发-

2. document事件

针对document对象触发。

语法:document.addEventListener()

属性类型描述备注
visibilitychangeEvent当窗口成为可见时触发window 也可监听该事件
readystatechangeEvent文档解析完成且所有的子资源都加载完成触发-
DOMContentLoadedEvent文档解析完成触发-

 

3. form事件

由 html 表单内的动作触发的事件(应用到几乎所有 html 元素,但最常用在 form 元素中)

属性类型描述备注
formchangeEvent当窗口成为可见时触发window 也可监听该事件
forminputEvent文档解析完成且所有的子资源都加载完成触发-
invalidEvent文档解析完成触发-
resetEvent文档解析完成且所有的子资源都加载完成触发
selectEvent文档解析完成触发-
submitEvent文档解析完成且所有的子资源都加载完成触发-
changeEvent文档解析完成触发-
blurFocusEvent元素失焦时触发window 也可监听该事件
focusFocusEvent元素聚焦时触发window 也可监听该事件

 

4. keyboard事件

键盘输入触发该事件

属性类型描述备注keydown
keydownKeyboardEvent在用户按下按键时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
keyupKeyboardEvent当用户释放按键时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
keypressKeyboardEvent在用户敲击按钮时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件


5. mouse事件

鼠标事件

属性类型描述备注
clickMouseEvent元素上发生鼠标点击时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dbclickMouseEvent元素上发生鼠标双击时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragMouseEvent元素被拖动时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragendMouseEvent在拖动操作末端触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragenterMouseEvent当元素元素已被拖动到有效拖放区域时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragleaveMouseEvent当元素离开有效拖放目标时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragoverMouseEvent当元素在有效拖放目标上正在被拖动时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dragstartMouseEvent在拖动操作开端触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
dropMouseEvent当被拖元素正在被拖放时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
mousedownMouseEvent当元素上按下鼠标按钮时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
mousemoveMouseEvent当鼠标指针移动到元素上时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
mouseoutMouseEvent当鼠标指针移出元素时触发当鼠标指针移出元素时触发
mouseoverMouseEvent当鼠标指针移动到元素上时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
mouseupMouseEvent当在元素上释放鼠标按钮时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
mousewheelMouseEvent当鼠标滚轮正在被滚动时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件
scrollMouseEvent当元素滚动条被滚动时触发window、document 也可监听该事件, Element 元素可以通过设置防止冒泡来阻止 window 事件

6. media事件

由媒介(比如视频、图像和音频)触发的事件(适用于所有 HTML 元素,但常见于媒介元素中,比如 <audio>、<embed>、<img>、<object> 以及 <video>)

属性类型描述备注
abortEvent在退出时触发-
canplayEvent当文件就绪可以开始播放时触发(缓冲已足够开始时)-
canplaythroughEvent当媒介能够无需因缓冲而停止即可播放至结尾时触发-
durationchangeEvent当媒介长度改变时触发-
emptiedEvent当发生故障并且文件突然不可用时触发(比如连接意外断开时)-
endedEvent当媒介已到达结尾时触发(可发送类似“感谢观看”之类的消息)-
errorEvent当在文件加载期间发生错误时触发-
loadeddataEvent当媒介数据已加载时触发-
loadedmetadataEvent当元数据(比如分辨率和时长)被加载时触发-
loadstartEvent在文件开始加载且未实际加载任何数据前触发-
pauseEvent当媒介被用户或程序暂停时触发-
playEvent当媒介已就绪可以开始播放时触发-
playingEvent当媒介已开始播放时触发-
progressEvent当浏览器正在获取媒介数据时触发-
ratechangeEvent每当回放速率改变时触发(比如当用户切换到慢动作或快进模式)-
readystatechangeEvent每当就绪状态改变时触发(就绪状态监测媒介数据的状态)-
seekedEvent当 seeking 属性设置为 false(指示定位已结束)时触发-
seekingEvent当 seeking 属性设置为 true(指示定位是活动的)时触发-
stalledEvent在浏览器不论何种原因未能取回媒介数据时触发-
suspendEvent在媒介数据完全加载之前不论何种原因终止取回媒介数据时触发-
timeupdateEvent当播放位置改变时(比如当用户快进到媒介中一个不同的位置时)触发-
volumechangeEvent每当音量改变时(包括将音量设置为静音)时触发-
waitingEvent当媒介已停止播放但打算继续播放时(比如当媒介暂停已缓冲更多数据)触发-

 

点赞(0)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)