BroadcastChannel
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.
Note: This feature is available in Web Workers
Constructor
BroadcastChannel()
-
Creates an object linking to the named channel.
Properties
This interface also inherits properties from its parent, EventTarget
.
-
BroadcastChannel.name
Read only -
Returns a
DOMString
, the name of the channel.
Event handlers
BroadcastChannel.onmessage
-
An event handler property that specifies the function to execute when a
message
event is fired on this object. BroadcastChannel.onmessageerror
-
An event handler called when a
MessageEvent
of typeMessageError
is fired—that is, when it receives a message that cannot be deserialized.
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.
Events
message
-
Fired when a message arrives on the channel. Also available via the
onmessage
property. messageerror
-
Fired when a message arrives that can't be deserialized. Also available via the
onmessageerror
property.
Specifications
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
BroadcastChannel |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
BroadcastChannel |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
close |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
message_event |
54 |
≤79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
messageerror_event |
60 |
≤79 |
57 |
No |
47 |
preview |
60 |
60 |
57 |
47 |
No
See bug 171216.
|
8.0 |
name |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
onmessage |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
onmessageerror |
60 |
79 |
57 |
No |
47 |
preview |
60 |
60 |
57 |
44 |
No
See bug 171216.
|
8.0 |
postMessage |
54 |
79 |
38 |
No |
41 |
preview |
54 |
54 |
38 |
41 |
No |
6.0 |
See also
- Another, more heavyweight, way of communicating between browser contexts:
ServiceWorker
. - Broadcast Channel API overview
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel