BroadcastChannel
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2022.
Note: This feature is available in Web Workers.
The BroadcastChannel interface represents a named channel that any browsing context of a given origin can subscribe to. It allows communication between different documents (in different windows, tabs, frames or iframes) of the same origin. Messages are broadcasted via a message event fired at all BroadcastChannel objects listening to the channel, except the object that sent the message.
Constructor
BroadcastChannel()-
Creates an object linking to the named channel.
Instance properties
This interface also inherits properties from its parent, EventTarget.
BroadcastChannel.nameRead only-
Returns a string, the name of the channel.
Instance methods
This interface also inherits methods from its parent, EventTarget.
BroadcastChannel.postMessage()-
Sends the message, of any type of object, to each
BroadcastChannelobject listening to the same channel. BroadcastChannel.close()-
Closes the channel object, indicating it won't get any new messages, and allowing it to be, eventually, garbage collected.
Events
This interface also inherits events from its parent, EventTarget.
message-
Fired when a message arrives on the channel. Also available via the
onmessageproperty. messageerror-
Fired when a message arrives that can't be deserialized. Also available via the
onmessageerrorproperty.
Specifications
| Specification |
|---|
| HTML> # broadcasting-to-other-browsing-contexts> |
Browser compatibility
Loading...
See also
- Another, more heavyweight, way of communicating between browser contexts:
ServiceWorker. - Broadcast Channel API overview