
# 支持的自定义事件
#### 鼠标事件（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\>：打开或关闭时触发。 |
   
