MessagePort.start()

MessagePort インターフェイスの start() メソッドは、ポート上のキューに置かれたメッセージの送信を開始します。このメソッドは、EventTarget.addEventListener を使用する場合のみ必要になります。これは、MessageChannel.onmessage を使用する場合は包含されています。

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

構文

port.start()

戻り値

無効。

引数

なし。

次のコードブロックには、handleMessage ハンドラ関数があり、onmessage を使用して、メッセージがこのドキュメントに送り返された時に実行されます:

channel.port1.onmessage = handleMessage;
function handleMessage(e) {
  para.innerHTML = e.data;
}   

補足: 完全に動作する例は、Github 上の チャンネルメッセージ送信の基本デモ を見てください (実際の動作も確認できます)。

これを行うもう一つの方法は、EventTarget.addEventListener を使用します。しかし、このメソッドが使用された場合、明示的に start() を呼び出してメッセージの送信を開始する必要があります:

channel.port1.addEventListener('message',handleMessage,false);
function handleMessage(e) {
  para.innerHTML = e.data;
  textInput.value = '';
}

channel.port1.start();

仕様

仕様書 策定状況 備考
WHATWG HTML Living Standard
start() の定義
現行の標準 HTML5 Web Messaging との差異なし。
HTML5 Web Messaging
start() の定義
勧告 仕様の W3C バージョン。

ブラウザの実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本サポート 4 未サポート 10.0 10.6 5
Worker 内で利用可能 (有) 41 (41) (有) (有) (有)
機能 Android Chrome for Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Phone Opera Mobile Safari Mobile
基本サポート 4.4 4 未サポート 未サポート 10.0 11.5 5.1
Worker 内で利用可能 (有) (有) 41.0 (41) (有) (有) (有) (有)

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: Marsf
 最終更新者: Marsf,