Méthode cloneNode() de XML DOM

Manuel de référence de l'objet Node

Définition et utilisation

La méthode cloneNode() peut créer une copie exacte du noeud spécifié.

Cette méthode peut retourner le noeud copié.

Syntaxe :

nodeObject.cloneNode(include_all)
Paramètres Description
include_all Obligatoire. Si le paramètre logique est réglé sur true, le noeud cloné va cloner tous les descendants du noeud original.

Valeur de retour

La copie du noeud actuel

Explication

Cette méthode copie et retourne une copie du noeud appelant. Si le paramètre passé à celle-ci est true, elle copiera également de manière récursive tous les descendants du noeud actuel. Sinon, elle ne copiera que le noeud actuel.

Le noeud retourné ne fait pas partie de l'arbre du document, et sa propriété parentNode est null.

Lorsque l'élément de noeud est copié, toutes ses propriétés seront également copiées. Cependant, il faut noter que les fonctions d'écouteur d'événements enregistrées sur le noeud actuel ne seront pas copiées.

Exemple

Dans tous les exemples, nous utiliserons le fichier XML books.xmlet les fonctions JavaScript loadXMLDoc()

Le fragment de code suivant peut克隆 le premier noeud <book>, puis l'ajouter à la fin de la liste des noeuds :

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book')[0];
var cloneNode=x.cloneNode(true);
xmlDoc.documentElement.appendChild(cloneNode);
//Afficher tous les titres
var y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
  {
  document.write(y[i].childNodes[0].nodeValue);
  document.write("<br />");
  }

Sortie :

Everyday Italian
Harry Potter
XQuery Kick Start
Apprendre XML
Everyday Italian

Manuel de référence de l'objet Node