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
# ref-for-dom-document-adoptnode①

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
adoptNode

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch