广播频道

基线 2022

新功能

2022 年 3 月起,此功能在最新的设备和浏览器版本中均可使用。此功能可能在旧设备或浏览器中无法使用。

注意:此功能在 Web Workers 中可用。

BroadcastChannel 接口表示一个命名频道,给定 来源 的任何 浏览上下文 都可以订阅该频道。它允许在同一来源的不同文档(在不同的窗口、选项卡、框架或 iframe 中)之间进行通信。消息通过 message 事件广播,该事件会触发监听该频道的每个 BroadcastChannel 对象,除了发送消息的对象。

EventTarget BroadcastChannel

构造函数

BroadcastChannel()

创建一个与命名频道链接的对象。

实例属性

此接口还继承了其父级 EventTarget 的属性。

BroadcastChannel.name 只读

返回一个字符串,即该频道的名称。

实例方法

此接口还继承了其父级 EventTarget 的方法。

BroadcastChannel.postMessage()

将消息(任何类型的对象)发送到每个监听相同频道的 BroadcastChannel 对象。

BroadcastChannel.close()

关闭频道对象,表示它不会收到任何新消息,并最终允许它被垃圾回收。

事件

此接口还继承了其父级 EventTarget 的事件。

message

当频道收到消息时触发。还可以通过 onmessage 属性获取。

messageerror

当收到无法反序列化的消息时触发。还可以通过 onmessageerror 属性获取。

规范

规范
HTML 标准
# broadcasting-to-other-browsing-contexts

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅