BroadcastChannel
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2022年3月.
备注: 此特性在 Web Worker 中可用。
BroadcastChannel 接口表示给定源的任何浏览上下文都可以订阅的命名频道。它允许同源的不同浏览器窗口、标签页、frame 或者 iframe 下的不同文档之间相互通信。消息通过 message 事件进行广播,该事件在侦听该频道的所有 BroadcastChannel 对象上触发,发送消息的对象除外。
构造函数
BroadcastChannel()-
创建一个链接到命名频道的对象。
实例属性
该接口也从它的父接口 EventTarget 继承属性。
BroadcastChannel.name-
频道名称,返回
DOMString。
实例方法
该接口也从它的父接口 EventTarget 继承方法。
BroadcastChannel.postMessage()-
向所有监听了相同频道的
BroadcastChannel对象发送一条消息,消息内容可以是任意类型的数据。 BroadcastChannel.close()-
关闭频道对象,指示它不会收到任何新消息,并允许它最终被垃圾回收。
事件
该接口也从它的父接口 EventTarget 继承事件。
message-
当频道收到一条消息时触发。也可以使用
onmessage属性访问。 messageerror-
当频道收到一条无法反序列化的消息时触发。也可以使用
onmessageerror属性访问。
规范
| Specification |
|---|
| HTML> # broadcasting-to-other-browsing-contexts> |
浏览器兼容性
Loading…
参见
- 一种在不同浏览器上下文之间通信的重量级方案:
ServiceWorker。 - Broadcast Channel API 概述