BroadcastChannel

BroadcastChannel インターフェイスは、特定のオリジン閲覧コンテキストが購読できる名前付きチャネルを表します。 それは、同じオリジンの異なるドキュメント間(異なるウィンドウ、タブ、フレーム、iframe)の通信を可能にします。 メッセージは、チャンネルをリッスンしているすべての BroadcastChannel オブジェクトで発生する message イベントを介して放送されます。

註: この機能は Web Workers 内で利用可能です。

コンストラクタ

BroadcastChannel()
名前付きチャンネルにリンクするオブジェクトを作成します。

プロパティ

このインターフェイスは、その親である EventTarget からもプロパティを継承します。

BroadcastChannel.name
チャネルの名前である DOMString を返します。

イベントハンドラ

BroadcastChannel.onmessage
このオブジェクトで message イベントが発生したときに実行する関数を指定する EventHandler プロパティ。
BroadcastChannel.onmessageerror
EventHandler は、MessageError 型の MessageEvent が発生したとき、つまり逆シリアル化できないメッセージを受け取ったときに呼び出されます。

メソッド

このインターフェイスは、その親である EventTarget からもメソッドを継承しています。

BroadcastChannel.postMessage()
同じチャンネルをリッスンしている各 BroadcastChannel オブジェクトに、任意の種類のオブジェクトのメッセージを送信します。
BroadcastChannel.close()
チャネルオブジェクトを閉じます。 これは、新しいメッセージを取得しないことを示し、最終的にガベージコレクションされることを許可します。

イベント

message
メッセージがチャネルに到着したときに発生します。
onmessage プロパティからも利用できます。
messageerror
逆シリアル化できないメッセージが到着したときに発生します。
onmessageerror プロパティからも利用できます。

仕様

仕様 状態 コメント
HTML Living Standard
BroadcastChannel の定義
現行の標準 初期定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
BroadcastChannelChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
BroadcastChannel() constructorChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
closeChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
message eventChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
messageerror eventChrome 完全対応 60Edge ? Firefox 完全対応 57IE 未対応 なしOpera 完全対応 47Safari 未対応 なしWebView Android 完全対応 60Chrome Android 完全対応 60Firefox Android ? Opera Android 完全対応 47Safari iOS 未対応 なしSamsung Internet Android 未対応 なし
nameChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
onmessageChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0
onmessageerrorChrome 完全対応 60Edge ? Firefox 完全対応 57IE 未対応 なしOpera 完全対応 47Safari 未対応 なしWebView Android 完全対応 60Chrome Android 完全対応 60Firefox Android ? Opera Android 完全対応 44Safari iOS 未対応 なしSamsung Internet Android 未対応 なし
postMessageChrome 完全対応 54Edge ? Firefox 完全対応 38IE 未対応 なしOpera 完全対応 41Safari 未対応 なしWebView Android 完全対応 54Chrome Android 完全対応 54Firefox Android ? Opera Android 完全対応 41Safari iOS 未対応 なしSamsung Internet Android 完全対応 6.0

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明

関連情報