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 English Always switch to English

Document : méthode createDocumentFragment()

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éthode createDocumentFragment() de l'interface Document crée un nouvel objet vide de type DocumentFragment dans lequel des nœuds du DOM peuvent être ajoutés pour construire un arbre DOM hors écran.

Syntaxe

js
createDocumentFragment()

Paramètres

Aucun.

Valeur de retour

Un objet DocumentFragment nouvellement créé et vide, prêt à recevoir des nœuds.

Description

Les objets DocumentFragment sont des objets Node du DOM qui ne font jamais partie de l'arbre DOM principal. Le cas d'utilisation habituel consiste à créer le fragment de document, à y ajouter des éléments, puis à ajouter le fragment de document à l'arbre DOM. Dans l'arbre DOM, le fragment de document est remplacé par tous ses enfants.

Étant donné que le fragment de document est en mémoire et ne fait pas partie de l'arbre DOM principal, l'utilisation de fragments de document peut entraîner une meilleure performance (angl.) dans certains anciens moteurs.

Vous pouvez également utiliser le constructeur DocumentFragment pour créer un nouveau fragment :

js
const fragment = new DocumentFragment();

Exemples

Cet exemple crée une liste des principaux navigateurs du web dans un DocumentFragment, puis ajoute le nouveau sous-arbre DOM au document pour l'afficher.

HTML

html
<ul id="ul"></ul>

JavaScript

js
const element = document.getElementById("ul"); // en supposant qu'ul existe
const fragment = document.createDocumentFragment();
const navigateurs = ["Firefox", "Chrome", "Opera", "Safari"];

navigateurs.forEach((navigateur) => {
  const li = document.createElement("li");
  li.textContent = navigateur;
  fragment.appendChild(li);
});

element.appendChild(fragment);

Résultat

Spécifications

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

Compatibilité des navigateurs

Voir aussi