This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
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.
Constructor
BroadcastChannel()
- Creates an object linking to the named channel.
Properties
This interface also inherits properties from its parent, EventTarget
.
BroadcastChannel.name
- Returns a
DOMString
, the name of the channel. BroadcastChannel.onmessage
- Is an
EventHandler
property that specifies the function to execute when amessage
event is fired on this object.
Methods
This interface also inherits methods from its parent, EventTarget
.
BroadcastChannel.postMessage()
- Sends the message, of any type of object, to each
BroadcastChannel
object 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.
Specifications
Specification | Status | Comment |
---|---|---|
WHATWG HTML Living Standard The definition of 'BroadcastChannel' in that specification. |
Living Standard | Initial definition. |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 54.0 | 38 (38) | No support | 41 | No support |
Available in workers | 54.0 | 38 (38) | No support | 41 | No support |
Feature | Android | Android Webview | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|
Basic support | No support | No support | 38.0 (38) | No support | 41 | No support | 54.0 |
Available in workers | No support | No support | 38.0 (38) | No support | 41 | No support | 54.0 |
See also
- Another, more heavyweight, way of communicating between browser contexts:
ServiceWorker
. - Broadcast Channel API overview