Podsumowanie
Tworzy kopię węzła z zewnętrznego dokumentu, która może być umieszczona wewnątrz bieżącego dokumentu.
Składnia
varnode =document.importNode(externalNode,deep);
node
jest nowym węzłem który jest importowany do dokumentu. The new node'sparentNode
isnull
, since it has not yet been inserted into the document tree.externalNode
is the node from another document to be imported.deep
is a boolean, indicating whether the children of the node need to be imported.
Przykład
var iframe = document.getElementsByTagName("iframe")[0]; var oldNode = iframe.contentDocument.getElementById("myNode"); var newNode = document.importNode(oldNode,true); document.getElementById("container").appendChild(newNode);
Uwagi
Pierwotny węzeł nie jest usunięty z oryginalnego dokumentu. Importowany węzeł jest klonem oryginału .
Przed włączeniem węzłów pochodzących z zewnętrznych dokumentów do bieżącego dokumentu konieczne jest ich sklonowanie za
pomocą metody document.importNode()
(lub zaadaptowanie przy użyciu metody document.adoptNode()
). Więcej informacji na temat własności
Node.ownerDocument
znajduje się na liście najczęściej zadawanych pytań na temat
DOM w witrynie W3C.
Aktualnie Firefox nie wymusza tej reguły (robił to przez pewien czas podczas cykli rozwojowych Firefoksa 3, ale zbyt dużo stron przestawało działać po wymuszeniu tej reguły). Zachęcamy autorów stron do poprawienia ich kodu dla lepszej kompatybilności w przyszłości.
Specyfikacja
DOM Level 2 Core: Document.importNode