Noeud | NN 6 IE 5 DOM 1 |
L´objet Node est une représentation abstraite dans le DOM W3C du bloc de création du contenu fondamental dans un document. Tous les morceaux de contenu que vous pouvez traiter dans le modèle DOM W3C sont des noeuds: Les chaînes de texte contiguës sans nom entre les balises, les éléments avec balises, les paires d´attributs nom/valeur, les éléments ayant une fonction spéciale tels que les commentaires, les déclarations DOCTYPE et même le document lui-même, pour en citer quelques-uns. |
|
Un objet Node est doté de nombreuses propriétés et méthodes, la plupart d´entre elles ayant trait aux relations du noeud avec les noeuds environnants. Les objets dans un document que les scripts lisent et contrôlent sont définis comme des descendants de l´objet Node de base; cela signifie que les objets ayant le contenu le plus courant avec lesquels les scripts DHTML travaillent (éléments HTML, noeuds de texte et attributs d´éléments), tous partagent ces propriétés et méthodes, au départ. Ensuite, suivant les capacités dont ils ont besoin en tant qu´éléments HTML, ils acquièrent de nouvelles propriétés et/ou méthodes qui leur donnent des pouvoirs spécifiques. |
|
Alors que la structure axée sur les noeuds du DOM W3C codifie les relations d´héritage parmi les différentes parties du contenu d´un document, le modèle dispose d´une modularité et d´un cadre conceptuels qui semblent parfois très lourds par rapport à la structure raccourcie axée sur HTML du DOM de première génération et du DOM Microsoft. Mais, l´objectif final est de fournir un modèle unique fonctionnant avec les documents XML et HTML (que ce soit dans leur version « pure » ou adaptée pour XML). |
addEventListener() | NN 6 IE s.o. DOM 2 |
addEventListener("eventType", listenerFunction, useCapture) | |
Relie une fonction de gestionnaire d´événements au noeud courant de façon à ce que la fonction soit exécutée lorsqu´un événement d´un type particulier arrive au noeud comme cible d´événement ou pendant la propagation des événements. Remarque: Les événements du DOM W3C se propagent par le biais des noeuds de texte, ainsi que des noeuds éléments. Le noeud « écoute » pour repérer le type d´événement pendant la capture d´événements ou la propagation par remontée, selon le paramétrage du troisième paramètre booléen. Vous pouvez invoquer cette méthode plusieurs fois pour le même noeud, mais avec des valeurs de paramètres différentes afin d´affecter autant de comportements de traitement d´événements que vous le désirez, mais vous ne pouvez invoquer qu´une une seule fonction d´auditeur pour le même type d´événement et de propagation. Si l´auditeur d´événements est ajouté de façon temporaire, vous pouvez le supprimer par le biais de la méthode removeEventListener() . |
|
Paramètres | |
|
|
Valeur renvoyée | |
Aucune. |
appendChild() | NN 6 IE 5 DOM 1 |
appendChild(nodeObject) | |
Insère un nouveau noeud à la suite du dernier noeud enfant de l´objet noeud considéré. L´objet noeud courant doit être capable de contenir des noeuds enfants, sinon la méthode renvoie une exception. Cette méthode est la façon la plus courante d´ajouter un élément, un noeud de texte ou un fragment de document créé dynamiquement à un élément existant, comme peut le faire un script lors de l´assemblage d´une section de contenu nouveau pour un document. Mais si la référence de noeud transmise comme paramètre avec la méthode appendChild() pointe sur un noeud existant dans l´arborescence de documents, ce noeud est supprimé de l´arborescence, puis ajouté à la fin de la liste des noeuds enfants de l´objet courant. Cela fournit un raccourci pour déplacer un noeud d´un emplacement à la fin d´un conteneur. |
|
L´ajout d´un noeud de texte en tant que noeud frère à un noeud de texte existant ne fusionne pas les deux noeuds. Pour fusionner tous les noeuds de texte frères en un seul grand noeud de texte, invoquez la méthode normalize() du parent. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence au noeud ajouté. |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE | NN 6 IE s.o. DOM 1 | |||||||||||||||||||||||||
Lecture seule | ||||||||||||||||||||||||||
Cet ensemble de constantes appartient à l´objet Node racine du DOM W3C et est donc hérité par tous les éléments et noeuds de niveau document. Chaque propriété correspond à un nombre entier associé à la propriété nodeType de chaque noeud du DOM. Vous pouvez utiliser ces propriétés comme un moyen plus clair d´indiquer le type de noeud que votre script recherche dans les comparaisons ou opérations similaires. |
||||||||||||||||||||||||||
Exemple | ||||||||||||||||||||||||||
if (myObject.nodeType == document.ELEMENT_NODE) { // process as an element here } |
||||||||||||||||||||||||||
Valeur | ||||||||||||||||||||||||||
Nombre entier correspondant au type de noeud du DOM comme suit. |
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
Par défaut | ||||||||||||||||||||||||||
Valeurs des constantes (ci-dessus). |
attributes[] | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie un objet carte noeud nommé, qui ressemble à un tableau (collection) d´objets attributs (type Attr du DOM W3C), mais a aussi des méthodes qui lui sont propres afin de faciliter l´accès à un élément de ce tableau. Le tableau attributes IE contient des entrées pour tous les attributs de la DTD interne de l´élément, plus tout attribut personnalisé (expando ) explicitement défini pour IE 6 dans le code source HTML. Les modifications apportées par script aux attributs de l´élément ou à leurs valeurs ne sont pas représentées dans ce tableau. |
|
Pour Netscape 6, le tableau attributes contient des entrées uniquement pour les attributs explicitement définis dans le code source HTML pour l´élément, y compris les attributs personnalisés. Les modifications apportées par script aux attributs (ajouts ou suppressions) ou à leurs valeurs sont représentées dans les objets attribute référencés par le tableau attributes . |
|
Au lieu des méthodes d´objet carte noeud nommé, vous pouvez accéder aux objets attributs individuels par la biais de la syntaxe de tableau JavaScript standard. Mais, en règle générale, il est bien plus pratique d´accéder aux valeurs d´attributs des éléments HTML, à des fins de script, par le biais de leur représentation en tant que propriétés d´objets éléments ou par le biais des méthodes getAttribute() et setAttribute() de l´élément. Pour les détails du DOM W3C (utiles pour l´analyse des documents XML), reportez-vous aux objets Attr et NamedNodeMap pour les propriétés et méthodes de ces objets. |
|
Exemple | |
var ldAttr = document.getElementById("myImg").attributes.getNamedItem("longdesc"); |
|
Valeur | |
Tableau (collection) de références d´objets attributs dans l´ordre du code source (Netscape 6), alphabétique (IE pour Mac) ou aléatoire (IE pour Windows). |
|
Par défaut | |
Le modèle de l´élément courant. |
childNodes[] | NN 6 IE 5 DOM 1 |
Lecture seule | |
C´est une propriété de l´objet Node du DOM W3C composée d´un tableau de références à tous les noeuds enfants (une liste de noeuds) dans le niveau inférieur de la hiérarchie des noeuds (qu´il s´agisse de parties de l´arborescence de noeuds ou de fragments de documents autonomes pas encore insérés dans l´arborescence de documents). Pour accéder aux noeuds imbriqués plus profondément (à des niveaux encore inférieurs), vous devez accéder au tableau childNodes de chaque noeud enfant du noeud courant. Une propriété essentielle pour parcourir une arborescence de noeuds. Reportez-vous à l´objet NodeList pour les propriétés et méthodes de ce genre de tableau. |
|
Exemple | |
for (var i = 0; i < nodeRef.childNodes.length; i++) { if (nodeRef.childNodes[i].nodeType == document.ELEMENT_NODE) { // operate on an element } } |
|
Valeur | |
Tableau des références des objets noeuds. |
|
Par défaut | |
Tableau de longueur zéro. |
firstChild, lastChild | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoient une référence au premier ou dernier noeud enfant (respectivement) du noeud élément courant. Le plus souvent, ces noeuds enfants sont des noeuds de texte imbriqués dans un élément. Pour un simple élément contenant un seul noeud de texte, les deux propriétés renvoient une référence au même noeud de texte. Pour les constructions plus complexes, telles que les éléments tr , d´autres noeuds éléments (éléments td ) peuvent être leurs noeuds enfants, mais certains navigateurs risquent de convertir les retours chariot entre les éléments du code source en noeuds de texte. Ainsi, il vaut mieux valider le type de noeud renvoyé par les propriétés avant d´agir dessus. |
|
Exemple | |
if (document.getElementById("elementID").firstChild.nodeType == 3) {
// process as a text node
}
|
|
Valeur | |
Référence d´objet Node (y compris noeud de texte, noeud d´élément HTML, etc.). |
|
Par défaut | |
null |
hasAttributes() | NN 6 IE s.o. DOM 1 |
Renvoie une valeur booléenne true si l´élément considéré a un ou des attributs explicitement affectés dans la balise. |
|
Paramètres | |
Aucune. |
|
Valeur renvoyée | |
Valeur booléenne: true | false . |
hasChildNodes() | NN 6 IE 5 DOM 1 |
Renvoie une valeur booléenne true si le noeud considéré contient un ou plusieurs noeuds enfants. |
|
Paramètres | |
Aucune. |
|
Valeur renvoyée | |
Valeur booléenne: true | false . |
insertBefore() | NN 6 IE 5 DOM 1 |
insertBefore(newChildNode, referenceChildNodeOrNull) | |
Insère un noeud en tant qu´enfant du noeud considéré (en général, ce noeud est un élément) avant un des autres noeuds enfants du noeud courant. Le nouvel enfant peut être une référence à un noeud existant dans l´arborescence de documents (auquel cas il est supprimé de sa position d´origine lors de l´invocation de cette méthode). Le noeud enfant peut aussi être nouvellement créé comme n´importe quel type de noeud du DOM valide, notamment un fragment de document (pouvant contenir des balises HTML) ou Attr (ce dernier est implémenté pour Netscape 6 et IE 6). |
|
Le second paramètre vous permet de spécifier un point de référence parmi les noeuds enfants existants, devant lesquels le nouveau noeud enfant est inséré. Autrement, si vous spécifiez null comme second paramètre (ou dans IE, si vous omettez ce paramètre), le nouveau noeud est inséré comme dernier enfant du noeud considéré, ce qui a le même résultat que la méthode appendChild() . |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence à un objet noeud inséré. |
isSupported() | NN 6 IE s.o. DOM 2 |
isSupported("feature", "version") | |
Renvoie la valeur booléenne true si le noeud considéré prend en charge (c´est-à-dire se conforme aux spécifications) un module et une version du DOM W3C donnés. Bien que la méthode hasFeature() de l´objet document.implementation effectue le même test, elle le fait sur l´ensemble de l´application du navigateur.La méthode isSupported() effectue le test sur un noeud individuel, vous permettant de vérifier la prise en charge des fonctionnalités pour le type de noeud considéré. Les valeurs de paramètres pour isSupported() sont les mêmes que pour document.implementation.hasFeature() . |
|
C´est au fabricant du navigateur de valider le fait que le DOM implémenté dans le navigateur se conforme à chaque module avant de permettre au navigateur de renvoyer true pour le module. Cela ne signifie pas nécessairement que l´implémentation n´a aucune bogue ou qu´elle est cohérente avec les autres implémentations. Les auteurs de scripts doivent faire attention. |
|
En théorie, vous pouvez utiliser cette méthode pour vérifier la prise en charge des modules avant d´accéder à une propriété ou d´invoquer une méthode, comme dans le fragment suivant qui suppose que myElem est une référence à un noeud élément: if (myElem.isSupported("CSS", "2.0")) { myElem.style.color = "green"; } |
|
En pratique, la détection d´objets est une meilleure solution car les capacités de rapport de prise en charge du DOM W3C ne sont pas encore vraiment implémentées et n´assurent certainement pas la compatibilité ascendante. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Valeur booléenne: true | false . |
lastChild | |
Voir firstChild. |
localName, namespaceURI, prefix | NN 6 IE s.o. DOM 2 |
Lecture seule | |
Ces trois propriétés s´appliquent principalement aux éléments de document XML avec des balises définies à l´aide d´espaces de nom XML. Voici un exemple simplifié d´un tel document: <?xml version="1.0" encoding="ISO-8859-1"> <results xmlns:libBook="http://catalog.umv.edu/schema"> <libBook:title libBook:rareBooks="true">De Principia</libBook:title> </results>? |
|
Les propriétés révèlent des détails sur les caractéristiques de dénomination de l´élément. localName est l´équivalent de la propriété nodeName de l´élément, c´est-à-dire le nom de la balise au sein de la portée de la totalité du document, même si le nom de la balise est réutilisé par un autre élément provenant d´un autre espace de nom. Cependant, prefix relie l´élément à un nom de préfixe qui est normalement défini avec un attribut xmlns d´un conteneur dans le document XML. Cela aide votre script à identifier l´espace de nom auquel l´élément est associé. Une autre liaison est révélée par la propriété namespaceURI , qui renvoie la chaîne de l´URI affecté à l´attribut xmlns d´un élément conteneur. Bien que ces trois propriétés appartiennent à l´objet Node , leurs valeurs sont null (ou du moins devraient être null , mais dans Netscape 6, ce sont des chaînes vides) pour les types de noeuds autres que les noeuds éléments et attributs. |
|
Exemple | |
var allTitles = document.getElementsByTagName("title"); for (var i = 0; i < allTitles.length; i++) { if (allTitles[i].prefix == "libBook" && allTitles[i].namespaceURI.indexOf("catalog.umv.edu") != -1) { // process title elements from the desired namespace here } } |
|
Valeur | |
Chaînes. |
|
Par défaut | |
Pour localName , le nom de la balise de l´élément. Pour les autres, une chaîne vide. |
nextSibling, previousSibling | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie une référence au noeud précédent ou suivant (respectivement) dans l´arborescence de documents, au même niveau d´imbrication que le noeud courant. Si aucun noeud ne se trouve à la position indiquée par le nom de la propriété, la méthode renvoie null . Pour un seul noeud de texte au sein d´un noeud élément, les deux propriétés renvoient null . La séquence des noeuds est initialement déterminée par l´ordre du code source, mais les modifications de l´arborescence de documents apportées par script sont reflétées dans les noeuds renvoyés par ces propriétés. |
|
Exemple | |
var nextNode = document.getElementById("elementID").nextSibling;
|
|
Valeur | |
Référence d´objet Node (y compris noeud de texte, noeud d´élément HTML, etc.). |
|
Par défaut | |
null |
nodeName | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie une chaîne qui identifie le nom du noeud comme influencé par le type de noeud. Pour les types de noeuds éléments et attributs, la propriété renvoie le nom de la balise et le nom de l´attribut, respectivement. Pour de nombreux autres types de noeuds, auxquels aucune étiquette inhérente n´est associée, la propriété nodeName renvoie une chaîne fixe indiquant le type de noeud, telle que #text pour un noeud de texte et #document pour le noeud de document racine. Pour les éléments, la propriété renvoie la même valeur de chaîne que la propriété tagName de l´objet élément. Remarque: Les navigateurs jusqu´à IE 6 et Netscape 7 renvoie les chaînes de balise d´élément entièrement en majuscules, quel que soit le style du code source ou la spécification DOCTYPE . |
|
Exemple | |
if (document.getElementById("elementID").nextSibling.nodeName == "#text") {
// process as a text node
}
|
|
Valeur | |
Chaîne fixe pour les noeuds #cdata-section , #document , #document-fragment et #text; chaîne variable pour les noeuds attributs, éléments et autres types de noeuds. |
|
Par défaut | |
Spécifique au noeud. |
nodeType | NN 6 IE 5 DOM 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture seule | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Renvoie un nombre entier qui correspond au type de noeud comme spécifié dans le DOM W3C. Il s´agit de la propriété à utiliser en priorité pour tester le type d´un objet noeud (plutôt que les valeurs de la propriété nodeName ). Chaque type de noeud a une valeur, mais certains navigateurs qui prennent en charge la propriété nodeType ne prennent pas tous les types de noeud en charge en tant qu´objets. Des constantes correspondantes sont associées aux valeurs de nombres entiers et vous pouvez les utiliser pour créer des comparaisons de script plus longues, mais plus faciles à comprendre, pour le traitement du type de noeud (reportez-vous à la propriété ATTRIBUTE_NODE précédemment dans ce chapitre). Remarque: Il n´y a aucun moyen de distinguer les types d´élément (par exemple, noeud Element racine et noeud HTMLElement ) par le biais de la propriété nodeType . Notez aussi qu´IE 6 pour Windows indique de façon erronée qu´un élément DOCTYPE est un type de noeud de commentaire. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Exemple | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if (document.getElementById("elementID").firstChild.nodeType == 1) {
// process as an element
}
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Valeur | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Valeurs, sous forme de nombres entiers, selon le tableau suivant. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Par défaut | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spécifique au noeud. |
normalize() | NN 6 IE s.o. DOM 2 |
Fusionne tous les noeuds de texte frères du noeud (élément) considéré en un seul noeud de texte. L´invocation de cette méthode peut être nécessaire après l´insertion ou la suppression de noeuds enfants d´un élément, si vos scripts de parcours (traversée) de noeuds s´attendent à ce que tout texte contigu se trouve dans un seul noeud de texte. Le DOM W3C considère qu´une arborescence de documents est normale seulement si un noeud de texte n´a pas d´autres noeuds de texte pour frères. |
|
Paramètres | |
Aucune. |
|
Valeur renvoyée | |
Aucune. |
ownerDocument | NN 6 IE 5(Mac)/6(Win) DOM 1 |
Lecture seule | |
Renvoie une référence à l´objet document qui contient le noeud courant. Peut être utile pour les fonctions qui agissent sur les références d´objet obtenues à partir de propriétés d´événements ou transmises comme chaînes d´ID> La propriété IE correspondante est document . |
|
Exemple | |
var currDoc = document.getElementById("elementID").ownerDocument;
|
|
Valeur | |
Référence de l'objet document . |
|
Par défaut | |
L'objet document courant. |
parentNode | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie une référence au noeud parent (généralement un élément) qui joue le rôle de conteneur pour le noeud courant dans l´arborescence de documents. La relation entre le noeud courant et son parent est purement structurelle et n´a rien à voir avec le contexte de positionnement. Un noeud parent est un noeud qui englobe complètement le noeud courant et ne doit pas être confondu avec les noeuds frères qui, au mieux, résident d´un seul côté du noeud courant. Vous pouvez utiliser les mêmes astuces liées à la structure en cascade que pour la propriété parentElement IE, mais il est risqué de faire correspondre les résultats des propriétés uniques à IE axées sur les éléments et les résultats des propriétés du DOM W3C axées sur les noeuds (bien que les versions de Microsoft Internet Explorer récentes prennent les deux points de vue en charge). |
|
Exemple | |
if (document.getElementById("elementID").parentNode.nodeType == 1) { document.getElementById("elementID").parentNode.style.fontSize = "14pt"; } |
|
Valeur | |
Référence de l'objet élément. |
|
Par défaut | |
Spécifique au noeud. |
removeChild() | NN 6 IE 5 DOM 1 |
removeChild(childNodeReference) | |
Supprime un noeud enfant de l´élément considéré. Le paramètre doit être une référence à un noeud enfant existant imbriqué à l´intérieur de l´élément considéré. Une fois supprimé, le noeud enfant ne fait plus partie de l´arborescence de documents, mais est conservé en mémoire. La méthode renvoie une référence au noeud supprimé afin que vous puissiez le modifier et le placer ailleurs dans l´arborescence de documents. Remarque: Vous pouvez demander à un noeud de supprimer l´un de ses enfants, mais vous ne pouvez pas lui demander de se supprimer lui-même (mais reportez-vous à removeNode() pour IE). |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence au noeud supprimé. |
replaceNode() | NN s.o. IE 5 (Win) DOM s.o. |
replaceNode(newNodeObjectReference) | |
Remplace le noeud considéré par un nouveau noeud. Le nouveau noeud peut être créé de zéro (c´est-à-dire un élément ou un noeud de texte) ou peut être une référence à un noeud qui existe ailleurs dans l´arborescence de documents. Dans ce cas, l´invocation de la méthode replaceNode() supprime le noeud de son emplacement d´origine dans l´arborescence de documents et le place à l´emplacement du noeud considéré. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence au noeud supprimé. |
swapNode() | NN s.o. IE 5 (Win) DOM s.o. |
swapNode(otherNodeObject) | |
Echange le noeud considéré (dans l´arborescence de documents) avec un autre noeud transmis comme paramètre. L´autre objet noeud peut être créé de zéro ou peut être une référence à un noeud qui existe ailleurs dans l´arborescence de documents. Dans ce cas, le résultat est le même que celui d´un échange bidirectionnel, où les deux noeuds échangent leurs positions respectives. Si les deux noeuds sont d´un type de noeud différent ou ont un type d´affichage d´éléments distinct (par exemple, interne et de niveau bloc), l´affichage du document peut être affecté de façon importante. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence au noeud à partir duquel la méthode est invoquée (c´est-à-dire le noeud considéré). |
swapNode() | NN s.o. IE 5 (Win) DOM s.o. |
swapNode(otherNodeObject) | |
Echange le noeud considéré (dans l'arborescence de documents) avec un autre noeud transmis comme paramètre. L'autre objet noeud peut être créé de zéro ou peut être une référence à un noeud qui existe ailleurs dans l'arborescence de documents. Dans ce cas, le résultat est le même que celui d'un échange bidirectionnel, où les deux noeuds échangent leurs positions respectives. Si les deux noeuds sont d'un type de noeud différent ou ont un type d'affichage d'éléments distinct (par exemple, interne et de niveau bloc), l'affichage du document peut être affecté de façon importante. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Référence au noeud à partir duquel la méthode est invoquée (c'est-à -dire le noeud considéré). |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE | NN 6 IE s.o. DOM 1 | |||||||||||||||||||||||||
Lecture seule | ||||||||||||||||||||||||||
Cet ensemble de constantes appartient à l'objet Node racine du DOM W3C et est donc hérité par tous les éléments et noeuds de niveau document. Chaque propriété correspond à un nombre entier associé à la propriété nodeType de chaque noeud du DOM. Vous pouvez utiliser ces propriétés comme un moyen plus clair d'indiquer le type de noeud que votre script recherche dans les comparaisons ou opérations similaires. |
||||||||||||||||||||||||||
Exemple | ||||||||||||||||||||||||||
if (myObject.nodeType == document.ELEMENT_NODE) { // process as an element here } |
||||||||||||||||||||||||||
Valeur | ||||||||||||||||||||||||||
Nombre entier correspondant au type de noeud du DOM comme suit. |
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
Par défaut | ||||||||||||||||||||||||||
Valeurs des constantes (ci-dessus). |
firstChild, lastChild | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoient une référence au premier ou dernier noeud enfant (respectivement) du noeud élément courant. Le plus souvent, ces noeuds enfants sont des noeuds de texte imbriqués dans un élément. Pour un simple élément contenant un seul noeud de texte, les deux propriétés renvoient une référence au même noeud de texte. Pour les constructions plus complexes, telles que les éléments tr , d'autres noeuds éléments (éléments td ) peuvent être leurs noeuds enfants, mais certains navigateurs risquent de convertir les retours chariot entre les éléments du code source en noeuds de texte. Ainsi, il vaut mieux valider le type de noeud renvoyé par les propriétés avant d'agir dessus. |
|
Exemple | |
if (document.getElementById("elementID").firstChild.nodeType == 3) {
// process as a text node
}
|
|
Valeur | |
Référence d'objet Node (y compris noeud de texte, noeud d'élément HTML, etc.). |
|
Par défaut | |
null |
localName, namespaceURI, prefix | NN 6 IE s.o. DOM 2 |
Lecture seule | |
Ces trois propriétés s'appliquent principalement aux éléments de document XML avec des balises définies à l'aide d'espaces de nom XML. Voici un exemple simplifié d'un tel document: |
|
Les propriétés révèlent des détails sur les caractéristiques de dénomination de l'élément. localName est l'équivalent de la propriété nodeName de l'élément, c'est-à -dire le nom de la balise au sein de la portée de la totalité du document, même si le nom de la balise est réutilisé par un autre élément provenant d'un autre espace de nom. Cependant, prefix relie l'élément à un nom de préfixe qui est normalement défini avec un attribut xmlns d'un conteneur dans le document XML. Cela aide votre script à identifier l'espace de nom auquel l'élément est associé. Une autre liaison est révélée par la propriété namespaceURI , qui renvoie la chaîne de l'URI affecté à l'attribut xmlns d'un élément conteneur. Bien que ces trois propriétés appartiennent à l'objet Node , leurs valeurs sont null (ou du moins devraient être null , mais dans Netscape 6, ce sont des chaînes vides) pour les types de noeuds autres que les noeuds éléments et attributs. |
|
Exemple | |
var allTitles = document.getElementsByTagName("title"); for (var i = 0; i < allTitles.length; i++) { if (allTitles[i].prefix == "libBook" && allTitles[i].namespaceURI.indexOf("catalog.umv.edu") != -1) { // process title elements from the desired namespace here } } |
|
Valeur | |
Chaînes. |
|
Par défaut | |
Pour localName , le nom de la balise de l'élément. Pour les autres, une chaîne vide. |
namespaceURI | |
Voir localName. |
prefix | |
Voir localName. |
nextSibling, previousSibling | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie une référence au noeud précédent ou suivant (respectivement) dans l'arborescence de documents, au même niveau d'imbrication que le noeud courant. Si aucun noeud ne se trouve à la position indiquée par le nom de la propriété, la méthode renvoie null . Pour un seul noeud de texte au sein d'un noeud élément, les deux propriétés renvoient null . La séquence des noeuds est initialement déterminée par l'ordre du code source, mais les modifications de l'arborescence de documents apportées par script sont reflétées dans les noeuds renvoyés par ces propriétés. |
|
Exemple | |
var nextNode = document.getElementById("elementID").nextSibling;
|
|
Valeur | |
Référence d'objet Node (y compris noeud de texte, noeud d'élément HTML, etc.). |
|
Par défaut | |
null |
previousSibling | |
Voir nextSibling. |
hasAttribute() | NN 6 IE s.o. DOM 1 |
hasAttribute("attributeName") | |
Renvoie une valeur booléenne true si l'élément considéré a un attribut dont le nom correspond au paramètre de la méthode. |
|
Paramètres | |
|
|
Valeur renvoyée | |
Valeur booléenne: true | false . |