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 事件。