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.

Интерфейс BroadcastChannel представляет собой именованный канал, на который можно подписаться из любого контекста просмотра данного источника. Это позволяет настроить коммуникацию между разными документами (в разных окнах, вкладках, фреймах и т.д.) одного источника. Сообщения распространяются с помощью события message, возникающего для всех объектов BroadcastChannel, слушающих этот канал.

Примечание: Эта возможность доступна в Web Workers.

Конструктор

BroadcastChannel()

Создаёт объект, связанный с именованным каналом.

Свойства

Этот интерфейс также наследует свойства от своего родителя, EventTarget.

BroadcastChannel.name

Возвращает DOMString, имя канала.

Обработчики событий

BroadcastChannel.onmessage

свойство event handler, определяющее функцию, которая будет запущена, когда произойдёт вызов события message на этом объекте.

BroadcastChannel.onmessageerror

event handler, который вызывается, когда приходит MessageEvent типа MessageError — когда приходит сообщение, которое не может быть десереализовано.

Методы

Этот интерфейс также наследует свойства от своего родителя,EventTarget.

BroadcastChannel.postMessage()

Отправляет сообщение любого типа объекта всем объектам BroadcastChannel, прослушивающим данный канал.

BroadcastChannel.close()

Закрывает объект канала, указывая, что тот больше не будет получать новые сообщения, и позволяет сборщику мусора уничтожить его.

Спецификации

Specification
HTML
# broadcasting-to-other-browsing-contexts

Совместимость с браузерами

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
BroadcastChannel
BroadcastChannel() constructor
close
message event
messageerror event
name
postMessage

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support
User must explicitly enable this feature.
Has more compatibility info.

Смотрите также