支持的自定义事件
鼠标事件(Mouse Events)
| 事件名称 | 触发说明 |
|---|---|
| onMousedown | 当鼠标按钮在元素上按下时触发。 |
| onMouseup | 当鼠标按钮在元素上释放时触发。 |
| onClick | 当鼠标按钮在元素上单击时触发(按下并释放)。 |
| onDblclick | 当鼠标按钮在元素上双击时触发。 |
| onMousemove | 当鼠标在元素上移动时持续触发。 |
| onMouseover | 当鼠标指针进入元素时触发。 |
| onMouseout | 当鼠标指针离开元素时触发。 |
| onMouseenter | 当鼠标指针进入元素时触发(不会冒泡)。 |
| onMouseleave | 当鼠标指针离开元素时触发(不会冒泡)。 |
| onContextmenu | 当上下文菜单(通常右键菜单)即将显示时触发。 |
| onAuxclick | 当鼠标辅助按钮(通常是中键)单击时触发。 |
| onMousewheel | 当鼠标滚轮滚动时触发。 |
| onWheel | 监听鼠标滚轮/触摸板滚动的事件。 |
键盘事件(Keyboard Events)
| 事件名称 | 触发说明 |
|---|---|
| onKeydown | 当键盘键被按下时触发。 |
| onKeypress | 当键盘键被按下并产生字符时触发。 |
| onKeyup | 当键盘键被释放时触发。 |
表单事件(Form Events)
| 事件名称 | 触发说明 |
|---|---|
| onSubmit | 当表单提交时触发。 |
| onReset | 当表单重置时触发。 |
| onInput | 当表单元素的值发生变化时触发。 |
| onChange | 当表单元素的值发生变化并失去焦点时触发。 |
| onFocus | 当元素获得焦点时触发。 |
| onBlur | 当元素失去焦点时触发。 |
| onCancel | 当元素执行“取消/关闭”操作时触发的事件。 |
| onInvalid | 当表单验证失败时触发。 |
| onSelect | 当用户选择文本时触发。 |
| onSelectionchange | 当用户选择文本变化时触发。 |
| onselectstart | 当用户开始选择文本时触发。 |
| onFormdata | 当表单数据被序列化时触发(用于FormData对象)。 |
| onSearch | <input type="search">的搜索提交/清空事件。 |
窗口事件(Window Events)
| 事件名称 | 触发说明 |
|---|---|
| onLoad | 当整个页面及其所有资源加载完成时触发。 |
| onUnload | 当用户离开页面时触发。 |
| onBeforeunload | 当页面即将卸载时触发(可以显示确认对话框)。 |
| onResize | 当浏览器窗口大小改变时触发。 |
| onScroll | 当元素的可滚动区域滚动时触发。 |
| onError | 当加载资源(如图片、脚本)失败时触发。 |
| onClose | 当窗口或文档关闭时触发。 |
打印与页面状态事件(Print & Page State Events)
| 事件名称 | 触发说明 |
|---|---|
| onBeforeprint | 当文档即将打印时触发。 |
| onAfterprint | 当文档打印完成后触发。 |
| onPagehide | 当页面隐藏时触发(如用户导航到另一个标签页)。 |
| onPageshow | 当页面显示时触发(如用户从历史记录返回)。 |
历史记录与导航事件(History & Navigation Events)
| 事件名称 | 触发说明 |
|---|---|
| onhashchange | 当URL的哈希部分(#部分)改变时触发。 |
| onPopstate | 当活动的历史条目改变时触发。 |
剪贴板与拖拽事件(Clipboard & Drag Events)
| 事件名称 | 触发说明 |
|---|---|
| onDrag | 当元素被拖拽时持续触发。 |
| onDragstart | 当用户开始拖拽元素时触发。 |
| onDragend | 当用户结束拖拽元素时触发。 |
| onDragover | 当拖拽元素经过放置目标时触发。 |
| onDragenter | 当拖拽元素进入放置目标时触发。 |
| onDragleave | 当拖拽元素离开放置目标时触发。 |
| onDrop | 当拖拽元素被放置到目标上时触发。 |
Canvas上下文事件(Canvas Context Events)
| 事件名称 | 触发说明 |
|---|---|
| onContextlost | 当WebGL(Web Graphics Library)上下文丢失时触发。 |
| onContextrestored | 当WebGL上下文恢复时触发。 |
媒体事件(Media Events)
| 事件名称 | 触发说明 |
|---|---|
| onAbort | 当媒体加载被中止时触发。 |
| onCanplay | 当媒体可以开始播放但可能还未准备完成时触发。 |
| onCanplaythrough | 当媒体可以完整播放而无需缓冲时触发。 |
| onDurationchange | 当媒体时长改变时触发。 |
| onEmptied | 当媒体变为空时触发。 |
| onEnded | 当媒体播放结束时触发。 |
| onLoadeddata | 当媒体当前帧数据加载完成时触发。 |
| onLoadedmetadata | 当媒体元数据加载完成时触发。 |
| onLoadstart | 当开始加载媒体时触发。 |
| onPause | 当媒体暂停时触发。 |
| onPlay | 当媒体开始播放时触发。 |
| onPlaying | 当媒体开始播放时触发(在onPlay之后)。 |
| onProgress | 当媒体加载进度更新时触发。 |
| onRatechange | 当播放速率改变时触发。 |
| onSeeked | 当媒体移动到新的播放位置时触发。 |
| onSeeking | 当媒体开始移动到新的播放位置时触发。 |
| onStalled | 当媒体加载停滞时触发。 |
| onSuspend | 当媒体加载被挂起时触发。 |
| onTimeupdate | 当媒体播放时间改变时触发。 |
| onVolumechange | 当音量改变时触发。 |
| onWaiting | 当媒体等待数据时触发。 |
| onCuechange | 当轨道中的文本轨道(如字幕)发生变化时触发。 |
动画与过渡事件(Animation & Transition Events)
| 事件名称 | 触发说明 |
|---|---|
| onAnimationstart | 当动画开始时触发。 |
| onAnimationend | 当动画结束时触发。 |
| onAnimationiteration | 当动画重复循环时触发。 |
| onTransitionstart | 当CSS过渡开始时触发。 |
| onTransitionend | 当CSS过渡结束时触发。 |
| onTransitioncancel | 当CSS过渡被取消时触发。 |
| onTransitionrun | 当CSS过渡创建时触发。 |
触摸与指针事件(Touch & Pointer Events)
| 事件名称 | 触发说明 |
|---|---|
| onPointerdown | 当指针设备(鼠标、笔、触摸)按下时触发。 |
| onPointerup | 当指针设备释放时触发。 |
| onPointermove | 当指针设备移动时触发。 |
| onPointerenter | 当指针设备进入元素时触发。 |
| onPointerleave | 当指针设备离开元素时触发。 |
| onPointercancel | 当指针操作被取消时触发。 |
| onPointerover | 当指针设备进入元素时触发(冒泡)。 |
| onPointerout | 当指针设备离开元素时触发(冒泡)。 |
| onPointerrawupdate | 当指针设备数据更新时触发(低级别指针事件)。 |
| ongotpointercapture | 当元素捕获指针时触发。 |
| onLostpointercapture | 当元素失去指针捕获时触发。 |
网络与服务器事件(Network & Server Events)
| 事件名称 | 触发说明 |
|---|---|
| onOnline | 当浏览器在线时触发。 |
| onOffline | 当浏览器离线时触发。 |
| onMessage | 当从服务器接收到消息时触发。 |
| onMessageerror | 当消息发生错误时触发。 |
存储事件(Storage Events)
| 事件名称 | 触发说明 |
|---|---|
| onStorage | 当存储区域(localStorage、sessionStorage)改变时触发。 |
通知与安装事件(Notification & Installation Events)
| 事件名称 | 触发说明 |
|---|---|
| onBeforeinstallprompt | 在浏览器显示安装提示前触发。 |
| onAppinstalled | 当PWA(渐进式Web应用)安装完成时触发。 |
第三方框架事件(WebKit特定)(Third-party Framework Events - WebKit Specific)
| 事件名称 | 触发说明 |
|---|---|
| onWebkitanimationstart | 当Webkit动画开始时触发。 |
| onWebkitanimationiteration | 当Webkit动画重复时触发。 |
| onWebkitanimationend | 当Webkit动画结束时触发。 |
| onWebkittransitionend | 当Webkit过渡结束时触发。 |
安全与权限事件(Security & Permission Events)
| 事件名称 | 触发说明 |
|---|---|
| onSecuritypolicyviolation | 当安全策略被违反时触发。 |
WebXR事件(WebXR Events-实验性)
| 事件名称 | 触发说明 |
|---|---|
| onBeforexrselect | (WebXR)在选择前触发。 |
语言与地区事件(Language & Locale Events)
| 事件名称 | 触发说明 |
|---|---|
| onLanguagechange | 当浏览器语言改变时触发。 |
DOM结构变更类事件(DOM Structure Change Events)
| 事件名称 | 触发说明 |
|---|---|
| onSlotchange | 当<slot>元素的分配内容发生变化时触发。 |
异步错误处理类事件(Asynchronous Error Processing Events)
| 事件名称 | 触发说明 |
|---|---|
| onRejectionhandled | 当Promise被拒绝并被处理时触发。 |
| onUnhandledrejection | 当Promise被拒绝但未被处理时触发。 |
交互控件的原生事件(Native Events of Interactive Controls)
| 事件名称 | 触发说明 |
|---|---|
| onToggle | <details>:打开或关闭时触发。 |