Résumé
Renvoie le nœud (node
) suivant immédiatement le nœud spécifié dans la liste des enfants (childNodes
) de son nœud parent, ou null
si le nœud spécifié est le dernier dans cette liste.
Syntaxe
noeud_suivant =noeud.nextSibling
Notes
L'opération inverse previousSibling
permet de rechercher l'élément précédent.
Les navigateurs basés sur Gecko insèrent des nœuds texte dans un document pour représenter des espaces
vides dans le balisage source. Par conséquent, un nœud obtenu par exemple via Node.firstChild
ou
Node.previousSibling
peut faire référence à un nœud texte contenant des espaces plutôt qu'au véritable élément
que l'auteur comptait obtenir.
Consultez Gestion des espaces dans le DOM et Why are some Text nodes empty? dans la FAQ DOM 3 du W3C pour plus d'informations.
Exemple
<div id="div-01">Voici div-01</div> <div id="div-02">Voici div-02</div> <script type="text/javascript"> var el = document.getElementById('div-01').nextSibling; document.write('<p>Au même niveau que div-01</p><ol>'); while (el) { document.write('<li>' + el.nodeName + '</li>'); el = el.nextSibling; } document.write('</ol>'); </script> /************************************************** Voici ce qui s'affichera dans la page lors de son chargement : Au même niveau que div-01 1. #text 2. DIV 3. #text 4. SCRIPT 5. P 6. OL **************************************************/
Dans cet exemple, on peut voir que des nœuds #text
sont insérés dans le DOM là où des espaces se trouvent dans le code source entre les balises (c'est-à-dire après la balise de fermeture d'un élément et avant la balise d'ouverture du suivant). Aucun espace n'est créé entre les éléments insérés par l'instruction document.write
.
L'inclusion possible de nœuds textes dans le DOM doit être prise en compte pour le parcours du DOM à l'aide de nextSibling
. Consultez les ressources dans la section #Notes.
Spécification
- DOM Level 1 Core: nextSibling — traduction (non normative)
- DOM Level 2 Core: nextSibling — traduction (non normative)