Document: adoptNode() Methode

Baseline Widely available

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

Die Document.adoptNode() Methode überträgt einen node aus einem anderen Document in das Dokument der Methode. Der adoptierte node und sein Unterbaum werden aus ihrem ursprünglichen Dokument (falls vorhanden) entfernt, und ihr ownerDocument wird auf das aktuelle Dokument geändert. Der node kann dann in das aktuelle Dokument eingefügt werden.

Syntax

js
adoptNode(externalNode)

Parameter

externalNode

Der node aus einem anderen Dokument, der übernommen werden soll.

Rückgabewert

Der kopierte importedNode im Rahmen des importierenden Dokuments.

Nach dem Aufruf dieser Methode sind importedNode und externalNode dasselbe Objekt.

Note: importedNode's Node.parentNode ist null, da er noch nicht in den Dokumentenbaum eingefügt wurde!

Beispiele

js
const iframe = document.querySelector("iframe");
const iframeImages = iframe.contentDocument.querySelectorAll("img");
const newParent = document.getElementById("images");

iframeImages.forEach((imgEl) => {
  newParent.appendChild(document.adoptNode(imgEl));
});

Anmerkungen

Bevor nodes aus externen Dokumenten ins aktuelle Dokument eingefügt werden können, sollten sie entweder:

  • geklont werden, indem document.importNode() verwendet wird; oder
  • durch document.adoptNode() adoptiert werden.

Weitere Informationen zu den Node.ownerDocument Themen finden Sie in den W3C DOM FAQ.

Spezifikationen

Specification
DOM Standard
# ref-for-dom-document-adoptnode①

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch