diff options
Diffstat (limited to 'files/de/web/api/document/importnode/index.html')
-rw-r--r-- | files/de/web/api/document/importnode/index.html | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/files/de/web/api/document/importnode/index.html b/files/de/web/api/document/importnode/index.html new file mode 100644 index 0000000000..8420b6f794 --- /dev/null +++ b/files/de/web/api/document/importnode/index.html @@ -0,0 +1,93 @@ +--- +title: Document.importNode() +slug: Web/API/Document/importNode +tags: + - API + - DOM + - Dokument + - Knoten + - Kopie + - Méthode + - Referenz + - importNode +translation_of: Web/API/Document/importNode +--- +<div>{{APIRef("DOM")}}</div> + +<p><span class="seoSummary">Die {{domxref("Document")}}-Methode <code><strong>importNode()</strong></code> erzeugt eine neue Kopie eines konkreten Knotens ({{domxref("Node")}}) oder Dokumenten-Fragments ({{domxref("DocumentFragment")}}) eines anderen Dokuments, so dass diese dann in das aktuelle Dokument eingefügt werden kann. </span> An dieser Stelle ist es noch nicht im Dokumentenbaum eingefügt, um das zu erreichen, muss eine Methode wie {{domxref("Node.appendChild", "appendChild()")}} oder {{domxref("Node.insertBefore", "insertBefore()")}} aufgerufen werden.</p> + +<h2 id="Syntax" name="Syntax">Syntax</h2> + +<pre class="syntaxbox">var <em>knoten</em> = <em>document</em>.importNode(<em>externerKnoten</em>, <em>deep</em>); +</pre> + +<dl> + <dt><code>externerKnoten</code></dt> + <dd>Der neue Knoten oder das neue Dokumenten-Fragment, welches in das aktuelle Dokument importiert werden soll. Nach dem Import ist der Elternknoten <code>null</code>, da der neue Knoten noch nicht in den Dokumentenbaum eingefügt wurde.</dd> + <dt><code>deep</code></dt> + <dd>Ein boolscher Wert der anzeigt, ob der komplette Unterbaum von<code>externalNode </code>importiert werden soll. Ist dieser Parameter <code>true</code>, werden <code>externalNode</code> so wie all seine Nachfahren kopiert; Ist er <code>false</code>, wird nur der einzelne Knoten, <code>externalNode</code>, importiert.</dd> +</dl> + +<div class="note"> +<p>In der DOM4-Spezifikation, ist <code>deep</code> als optionales Argument angeführt. Wird es weggelassen, verhält sich die Methode als ob der Wert von <code>deep</code><strong><code>true </code></strong>wäre, was zu standardmäßigen tiefen Kopieren führt. Um flach zu kopieren, muss <code>deep</code> explizit auf <code>false</code> gesetzt werden.</p> + +<p>Dieses Verhalten wurde in der letzten Spezifikation geändert, der Wert von <code>deep</code> wird bei Weglassen auf <strong><code>false </code></strong>gesetzt. Obwohl es immer noch optional ist, empfehlen wir für Vorwärts- und Rückwärtskompatibilität das <code>deep</code>-Argument immer explizit anzugeben. Seit Gecko 28.0 {{geckoRelease(28)}} ist eine Konsolenwarnung implementiert, wenn das Argument weggelassen wird. Seit Gecko 29.0 {{geckoRelease(29)}}) ist flaches Kopieren das Standardverhalten.</p> +</div> + +<h2 id="Example" name="Example">Beispiel</h2> + +<pre class="brush: js">var iframe = document.getElementsByTagName("iframe")[0]; +var oldNode = iframe.contentWindow.document.getElementById("myNode"); +var newNode = document.importNode(oldNode, true); +document.getElementById("container").appendChild(newNode); +</pre> + +<h2 id="Notes" name="Notes">Anmerkungen</h2> + +<p>Der Originalknoten wird nicht aus dem Ursprungsdokument entfernt. Der importierte Knoten ist des Weiteren eine Kopie des ursprünglichen.</p> + +<p> </p> + +<p>Nodes from external documents should be cloned using <a href="/de/docs/Web/API/Document/importNode" title="Die Document-Methode importNode() erzeugt eine neue Kopie eines konkreten Knotens (Node) oder Dokumenten-Fragments (DocumentFragment) eines anderen Dokuments, so dass diese dann in das aktuelle Dokument eingefügt werden kann. "><code>document.importNode()</code></a> (or adopted using <a href="/de/docs/Web/API/Document/adoptNode" title="Überträgt einen Knoten. Der Knoten und sein Unterbaum werden aus dem Dokument, in dem sie sich befinden entfernt (so vorhanden), und sein ownerDocument wird zu dem aktuellen Dokument geändert. Der Knoten kann dann in das aktuelle Dokument eingefügt werden."><code>document.adoptNode()</code></a>) before they can be inserted into the current document. For more on the <a class="new" href="/de/docs/Web/API/Node/ownerDocument" rel="nofollow" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>Node.ownerDocument</code></a> issues, see the <a class="external" href="http://www.w3.org/DOM/faq.html#ownerdoc" rel="noopener">W3C DOM FAQ</a>.</p> + +<p>Firefox doesn't currently enforce this rule (it did for a while during the development of Firefox 3, but too many sites break when this rule is enforced). We encourage Web developers to fix their code to follow this rule for improved future compatibility.</p> + +<p> </p> + +<h2 id="Spezifikationen">Spezifikationen</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spezifikationen</th> + <th scope="col">Status</th> + <th scope="col">Kommentar</th> + </tr> + <tr> + <td>{{SpecName("DOM WHATWG", "#dom-document-importnode", "document.importNode()")}}</td> + <td>{{Spec2("DOM WHATWG")}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName("DOM2 Core", "core.html#Core-Document-importNode", "document.importNode()")}}</td> + <td>{{Spec2("DOM2 Core")}}</td> + <td>Ursprüngliche Definition</td> + </tr> + </tbody> +</table> + +<h2 id="Browserkompatibilität">Browserkompatibilität</h2> + +<div> + + +<p>{{Compat("api.Document.importNode")}}</p> +</div> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li>{{domxref("document.adoptNode()")}}</li> + <li>{{domxref("Node.appendChild()")}}</li> + <li>{{domxref("Node.insertBefore()")}}</li> +</ul> |