Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Window: message event

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit August 2017 browserübergreifend verfügbar.

Das message-Ereignis wird bei einem Window-Objekt ausgelöst, wenn das Fenster eine Nachricht erhält, zum Beispiel durch einen Aufruf von Window.postMessage() aus einem anderen Browsing-Kontext.

Dieses Ereignis ist nicht abbruchfähig und wird nicht propagiert.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener(), oder setzen Sie eine Ereignisbehandlereigenschaft.

js
addEventListener("message", (event) => { })

 => { }

Ereignistyp

Ein MessageEvent. Erbt von Event.

Event MessageEvent

Beispiele

Angenommen, ein Skript sendet eine Nachricht an einen anderen Browsing-Kontext, wie ein anderes <iframe>, mit folgendem Code:

js
const targetFrame = window.top.frames[1];
const targetOrigin = "https://example.org";
const windowMessageButton = document.querySelector("#window-message");

windowMessageButton.addEventListener("click", () => {
  targetFrame.postMessage("hello there", targetOrigin);
});

Der Empfänger kann mit addEventListener() auf die Nachricht hören, mit folgendem Code:

js
window.addEventListener("message", (event) => {
  console.log(`Received message: ${event.data}`);
});

Alternativ könnte der Listener die onmessage-Ereignisbehandlereigenschaft nutzen:

js
window. => {
  console.log(`Received message: ${event.data}`);
};

Spezifikationen

Spezifikation
HTML
# event-message
HTML
# handler-window-onmessage

Browser-Kompatibilität

Siehe auch