Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Web-APIs
  3. HTMLIFrameElement
  4. contentWindow

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

View in EnglishAlways switch to English

HTMLIFrameElement: contentWindow-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.

DiecontentWindow-Eigenschaft gibt dasWindow-Objekt einesHTMLIFrameElement zurück.

Dieses Attribut ist schreibgeschützt.

Wert

EinWindow-Objekt.

Beschreibung

Der Zugriff auf das voncontentWindow zurückgegebeneWindow unterliegt den Regeln derSame-Origin-Policy. Das bedeutet, wenn das iframe dieselbe Herkunft wie das übergeordnete Element hat, kann das übergeordnete Element auf das Dokument des iframes und dessen internes DOM zugreifen. Wenn sie unterschiedlich sind (cross-origin), ist der Zugriff auf die Attribute des Fensters sehr eingeschränkt. Siehe"Cross-Origin Script API Access" für Details.

Seiten können diese Eigenschaft auch verwenden, um festzustellen, welches iframe eine Nachricht mitWindow.postMessage() gesendet hat, indem sie es mit dersource-Eigenschaft des Nachrichtenereignisses vergleichen.

Beispiele

Zugriff auf das Dokument eines iframes

Dieses Beispiel ändert dasstyle-Attribut des Dokumentkörpers.

Beachten Sie, dass dies nur funktioniert, wenn das Fenster des iframes dieselbe Herkunft wie sein übergeordnetes Element hat: Andernfalls führt der Versuch, aufcontentWindow.document zuzugreifen, zu einer Ausnahme.

js
const iframe = document.querySelector("iframe").contentWindow;iframe.document.querySelector("body").style.backgroundColor = "blue";// this would turn the 1st iframe in document blue.

Zuordnung von Nachrichtenquellen zu iframes

Dieses Beispiel könnte auf einer Seite laufen, die mehrere iframes hostet, von denen jedes mitWindow.postMessage() Nachrichten senden kann. Wenn die Seite eine Nachricht erhält, möchte sie wissen, welches iframe das Fenster enthält, das die Nachricht gesendet hat.

Dazu überprüft die Seite zunächst, wenn sie eine Nachricht erhält, ob die Nachricht von der erwarteten Herkunft stammt. Dann findet sie das iframe, das die Quelle der Nachricht war, indem sie diesource-Eigenschaft des Nachrichtenereignisses mit dercontentWindow-Eigenschaft des iframes vergleicht.

js
const expectedOrigin = "https://example.org";const iframes = Array.from(document.querySelectorAll("iframe"));window.addEventListener("message", (e) => {  if (e.origin !== expectedOrigin) return;  const sourceIframe = iframes.find(    (iframe) => iframe.contentWindow === e.source,  );  console.log(sourceIframe);});

Spezifikationen

Specification
HTML
# dom-iframe-contentwindow

Browser-Kompatibilität

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2026 Movatter.jp