Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. Document
  4. document.importNode

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

document.importNode

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

La méthodeDocumentimportNode() crée une nouvelle copie duNode ouDocumentFragment spécifié à partir d'un autre document, afin qu'il puisse être inséré dans le document actuel. Il n'est pas encore inclus dans l'arbre des documents; Pour ce faire, vous devez appeler une méthode telle queappendChild () ouinsertBefore ().

Syntaxe

js
var node = document.importNode(externalNode, deep);
externalNode

Le nouveauNode ouDocumentFragment à importer dans le document courant. Après l'importation, le nouveauparentNode du noeud estnull, car il n'a pas encore été inséré dans l'arborescence du document.

deep

Une valeur booléenne qui indique s'il faut ou non importer la totalité de la sous-arborescence DOM provenant deexternalNode. Si ce paramètre esttrue (vrai), alorsexternalNode et tous ses descendants sont copiés; sifalse(faux), seul le nœud unique,externalNode, est importé.

Note :Dans la spécification DOM4,deep est répertorié en tant qu'argument facultatif. S'il est omis, la méthode agit comme si la valeur dedeep étaittrue, par défaut, elle utilisait le clonage profond comme comportement par défaut. Pour créer un clone superficiel, la profondeur doit être définie surfalse.

Ce comportement a été modifié dans la dernière spécification, et s'il est omis, la méthode agira comme si la valeur dedeep étaitfalse. Bien que ce soit toujours facultatif, vous devriez toujours fournir l'argumentdeep à la fois pour la compatibilité en amont et en aval. Avec Gecko 28.0, la console a averti les développeurs de ne pas omettre l'argument. À partir de Gecko 29.0, un clone superficiel est défini par défaut au lieu d'un clone profond.

Exemple

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);

Notes

Le noeud d'origine n'est pas supprimé du document d'origine. Le noeud importé est un clone de l'original.

Les nœuds provenant de documents externes doivent être clonés à l'aide dedocument.importNode() (ou adoptés avecdocument.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes deNode.ownerDocument, consultez laFAQ DOM du W3C (en anglais).

Gecko n'obligeait pas à utiliserdocument.importNode() etdocument.adoptNode() avant sa version 1.9. Depuis les versions 1.9 alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exceptionWRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans lebug 47903.

Spécifications

Specification
DOM
# ref-for-dom-document-importnode①

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2026 Movatter.jp