MessagePort: start() 方法

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 2015 年 9 月以來,該特性已在各大瀏覽器中可用。

注意:此功能在 Web Workers 中可用。

start()MessagePort 介面的一個方法,用於開始傳送在埠上排隊等待發送的訊息。當使用 EventTarget.addEventListener 時才需要呼叫此方法;如果使用 onmessage,則會隱式呼叫此方法。

語法

js
start()

引數

無。

返回值

無(undefined)。

示例

在下面的程式碼塊中,你可以看到一個 handleMessage 處理函式,當透過 onmessage 向此文件傳送訊息時,該函式會執行

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

另一種選擇是使用 EventTarget.addEventListener 來完成此操作,但是,當使用此方法時,你需要顯式呼叫 start() 來開始訊息流向此文件

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

channel.port1.start();

規範

規範
HTML
# dom-messageport-start-dev

瀏覽器相容性

另見