事件类型介绍

            事件是您在编程时系统内发生的动作或者发生的事情,系统响应事件后,如果需要,您可以某种方式对事件做出回应。是否发生|

事件的触发用于通知“对变化感兴趣”的代码以影响代码的执行。这些事件可能来自用户的交互(例如:使用鼠标或调整窗口大小)、底层环境状态的改变(例如:电池电量不足或操作系统的媒体事件)和其它的情况。

每个事件都使用继承自 Event 接口的对象来表示,可以包括额外的自定义成员属性及函数,以获取事件发生时相关的更多信息。事件 > 基于 Event 的接口中完整地列出了不同的事件类型。

本文提供了你可能感兴趣的主要事件类型(动画、剪切板、worker,等等)的索引,以及实现这些事件的主要的类。最后是所有提供了文档的事件列表。 

事件类型描述文档
动画

与 Web Animation API 相关的事件。

用于响应动画状态的改变(例如:动画的开始或结束)。

在 DocumentWindowHTMLElement 上触发的事件。
异步数据获取

与数据获取相关的事件。

在 AbortSignalXMLHttpRequestFileReader 上触发的事件。
剪切板

与 Clipboard API 相关的事件。

用于在内容被剪切、复制或粘贴时发出通知。

在 DocumentWindowHTMLElement 上触发的事件。
文本输入(Composition)

与文本输入相关的事件;“间接”输入文本(而不是直接使用常规的键盘输入)。

例如,使用语音转文字的引擎,或使用特殊的组合键以将键入的内容表示成另一种语言中的字符。

在 Element 上触发的事件。
CSS 变换

与 CSS 变换相关的事件。

当 CSS 变换开始、停止或取消等事件发生时发出通知。

在 DocumentWindowHTMLElement 上触发的事件。
数据库

与数据库操作相关的事件:打开、关闭、事务、错误,等等。

在 IDBDatabaseIDBOpenDBRequestIDBRequestIDBTransaction 上触发的事件。
DOM 突变

与文档对象模型(DOM)层次结构和节点的修改相关的事件。

警告: 突变事件 (en-US)已被废弃。请使用 MutationObserver 代替。

拖放、滚轮

与使用 HTML 拖放 API 和滚轮事件相关的事件。

拖动和滚轮事件派生自鼠标事件。虽然它们在使用鼠标滚轮和拖放时触发,但它们也可以和其它合适的硬件一起使用。

拖放事件在 Document 上触发。

滚轮事件在 Document (en-US) 和 Element 上触发。

焦点

与元素获得和失去焦点相关的事件。

在 ElementWindow 上触发的事件。
表单

与创建、重置和提交表单相关的事件。

在 HTMLFormElement 上触发。
全屏

与 Fullscreen API 相关的事件。

用于在全屏和窗口模式切换或切换期间发生错误时发送通知。

在 DocumentElement 上触发的事件。
游戏手柄(Gamepad)

与 Gamepad API 相关的事件。

在 Window 上触发的事件。
手势

建议使用 Touch 事件来实现手势。

在 DocumentElement 上触发的事件。

此外还有一些非标准的手势事件:

History

与 History API 相关的事件。

在 Window 上触发的事件。
HTML 元素内容显示管理

与显示或文本元素状态的改变相关的事件。

在 HTMLDetailsElementHTMLDialogElementHTMLSlotElement 上触发的事件。
输入

与 HTML input 元素(如:<input><select> 或 <textarea>)相关的事件。

在 HTMLElementHTMLInputElement 上触发的事件。
键盘

与使用键盘相关的事件。

用于在按键向上、向下或仅仅只是按下时发出通知。

在 DocumentElement 上触发的事件。
加载/卸载文档

在加载或卸载文档时触发的事件。

在 Document 和 Window 上触发的事件。

清单

与安装渐进式 web 应用清单相关的事件。

在 Window 上触发的事件
媒体

与媒体使用(包括 Media Capture and Streams APIWeb Audio API画中画 API,等等)相关的事件。

在 ScriptProcessorNodeHTMLMediaElementAudioTrackList (en-US)AudioScheduledSourceNodeMediaRecorderMediaStreamMediaStreamTrackVideoTrackListHTMLTrackElement (en-US)OfflineAudioContextTextTrack (en-US)TextTrackList (en-US)Element/audioElement/video 上触发的事件。
消息传递

与窗口从另一个浏览上下文接受消息相关的事件。

在 Window 上触发的事件。
鼠标

计算机鼠标相关的事件。

用于在鼠标单机、双击、释放、按下、右击、移入移除元素/文本、选择等动作时发出通知。

指针事件为鼠标事件提供了与硬件无关的代替方案。拖放和滚轮事件派生自鼠标事件。

在 Element 上触发的事件。
网络连接

与获得和失去网络连接相关的事件。

在 Window 上触发的事件。

在 NetworkInformation网络状况 API)上触发的事件。

支付

支付请求 API 相关的事件。

在 PaymentRequest (en-US)PaymentResponse (en-US) 上触发的事件。

性能

与 High Resolution Time APIPerformance Timeline APINavigation Timing APIUser Timing API 和 Resource Timing API 相关的事件。

在 Performance 上触发的事件。

指针

指针事件 API 相关的事件。

提供来自指针设备(包括鼠标、触控、笔/触控笔)的与硬件无关的通知。

在 DocumentHTMLElement 上触发的事件。
打印

与打印相关的事件。

在 Window 上触发的事件。
Promise rejection

在任意 JavaScript promise 被拒绝时,发送到全局脚本上下文的事件。

在 Window 上触发的事件。
网络套接字

与 WebSockets API 相关的事件。

在 Websocket 上触发的事件。
SVG

与 SVG 图像相关的事件。

在 SVGElementSVGAnimationElementSVGGraphicsElement 上触发的事件。

文本选择

与选择文本相关的 Selection API 事件。

事件(selectionchange)在 HTMLTextAreaElement (en-US)HTMLInputElement 上触发。

触控

与 Touch Events API 相关的事件。

在与触控屏交互(例如:用手指或触控笔)时发出通知。与 Force Touch API 无关。

在 DocumentElement 上触发的事件。
虚拟现实

与 WebXR Device API 相关的事件。

警告: WebVR API(和关联的 Window 事件)已被废弃。

在 XRSystem (en-US)XRSession (en-US)XRReferenceSpace (en-US) 上触发的事件。
RTC(实时通信)

与 WebRTC API 相关的事件。

在 RTCDataChannelRTCDTMFSender (en-US)RTCIceTransport (en-US)RTCPeerConnection 上触发的事件。
Server-sent 事件

与 server sent events API 相关的事件。

在 EventSource 上触发的事件。
语音合成

与 Web Speech API 相关的事件。

在 SpeechSynthesisUtterance 上触发的事件。
Worker

与 Web Workers APIService Worker APIBroadcast Channel API 和 Channel Messaging API 相关的事件。

用于相应新消息和消息发送的错误。Service worker 还可以收到其它事件的通知,包括推送通知、用户单击显示的通知 push 订阅失效、从内容索引中删除条目,等等。

在 ServiceWorkerGlobalScopeDedicatedWorkerGlobalScopeSharedWorkerGlobalScope (en-US)WorkerGlobalScopeWorkerWorkerGlobalScopeBroadcastChannelMessagePort 上触发的事件。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值