MessageChannel: port1-Eigenschaft
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die port1 schreibgeschützte Eigenschaft des MessageChannel-Interfaces gibt den ersten Port des Nachrichtenkanals zurück — den Port, der an den Kontext angehängt ist, der den Kanal erzeugt hat.
Wert
Ein MessagePort-Objekt, der erste Port des Kanals, das an den Kontext angehängt ist, der den Kanal erzeugt hat.
Beispiele
Im folgenden Codeblock sehen Sie, wie ein neuer Kanal mithilfe des MessageChannel()-Konstruktors erstellt wird. Wenn das <iframe> geladen ist, übergeben wir port2 an das <iframe> unter Verwendung von MessagePort.postMessage zusammen mit einer Nachricht. Der handleMessage-Handler antwortet dann auf eine Nachricht, die zurück vom <iframe> gesendet wird (unter Verwendung von onmessage), und fügt sie in einen Absatz ein. Die Methode handleMessage ist mit dem port1 verbunden, um zu lauschen, wenn die Nachricht eintrifft.
const channel = new MessageChannel();
const para = document.querySelector("p");
const ifr = document.querySelector("iframe");
const otherWindow = ifr.contentWindow;
ifr.addEventListener("load", iframeLoaded, false);
function iframeLoaded() {
otherWindow.postMessage("Hello from the main page!", "*", [channel.port2]);
}
channel.port1.onmessage = handleMessage;
function handleMessage(e) {
para.innerHTML = e.data;
}
Spezifikationen
| Specification |
|---|
| HTML> # dom-messagechannel-port1-dev> |
Browser-Kompatibilität
Loading…