ParentNode.children

La propriété children de ParentNode est une propriété en lecture seule qui renvoie une HTMLCollection directe contenant tous les enfants éléments du noeud sur lequel elle a été appelée.

Syntaxe

var children = node.children;

Valeur

Une HTMLCollection, qui est une collection directe et ordonnée des éléments DOM qui sont enfants du node (noeud). Vous pouvez accéder aux noeuds enfants individuellement en utilisant la méthode  item() (élément) sur la collection ou en utilisant la notation de type tableau (array) de JavaScript.

S'il n'y a pas d'éléments enfants, alors children est une liste vide et a une length (longueur) de 0.

Exemple

var machin = document.getElementById('machin');
for (var i = 0; i < machin.children.length; i++) {
    console.log(machin.children[i].tagName);
}

Polyfill

// Réécrit le prototype 'children' natif.
// Ajoute le support de Document & DocumentFragment pour IE9 & Safari.
// Renvoie un tableau (array) au lieu d'une HTMLCollection.
;(function(constructeur) {
    if (constructeur &&
        constructeur.prototype &&
        constructeur.prototype.children == null) {
        Object.defineProperty(constructeur.prototype, 'children', {
            get: function() {
                var i = 0, noeud, noeuds = this.childNodes, children = [];
                while (noeud = noeuds[i++]) {
                    if (noeud.nodeType === 1) {
                        children.push(noeud);
                    }
                }
                return children;
            }
        });
    }
})(window.Node || window.Element);

Spécification

Spécification Statut Commentaire
DOM
La définition de 'ParentNode.children' dans cette spécification.
Standard évolutif Définition initiale.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung Internet
childrenChrome Support complet 1Edge Support complet 12Firefox Support complet 3.5IE Support complet 9
Notes
Support complet 9
Notes
Notes Internet Explorer 6, 7 and 8 supported it, but erroneously includes Comment nodes.
Opera Support complet 10Safari Support complet 4WebView Android Support complet 1Chrome Android Support complet 18Firefox Android Support complet 4Opera Android Support complet 10.1Safari iOS Support complet 9Samsung Internet Android Support complet 1.0
Support on Document and DocumentFragment
Expérimentale
Chrome Support complet 29Edge Support complet 16Firefox Support complet 25IE Aucun support NonOpera Support complet 16Safari Support complet 9WebView Android Support complet OuiChrome Android Support complet OuiFirefox Android ? Opera Android ? Safari iOS Support complet 9Samsung Internet Android Support complet Oui
Support on SVGElement
Expérimentale
Chrome Support complet OuiEdge Support complet 16Firefox Support complet OuiIE Aucun support NonOpera ? Safari Support complet 9WebView Android Support complet OuiChrome Android Support complet OuiFirefox Android ? Opera Android ? Safari iOS Support complet 9Samsung Internet Android Support complet Oui

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Compatibilité inconnue  
Compatibilité inconnue
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Voir aussi