Attr, attribute | NN 6 IE 5 DOM 1 | ||||
Une représentation abstraite de la paire nom/valeur d´attribut d´un élément est un objet connu, dans le langage DOM W3C, sous le nom d´objet Attr; dans le langage IE, on l´appelle objet attribute. Il s´agit de deux noms différents, mais du même objet. Un objet attribut est créé dans les deux environnements avec la méthode document.createAttribute(); la référence à l´objet attribut devient ensuite le paramètre de la méthode setAttributeNode() d´un élément pour insérer cet objet attribut dans l´élément. Par exemple: var newAttr = document.createAttribute("author"); newAttr.value = "William Shakespeare"; document.getElementById("hamlet").setAttributeNode(newAttr); |
|||||
Certaines méthodes d´éléments du DOM W3C (en particulier, la méthode getAttributeNode()) renvoient des objets attributs, dotés de propriétés auxquelles vous pouvez accéder comme à celles de n´importe quel objet définissable par script. |
|||||
Dans le modèle abstrait du DOM W3C, l´objet Attr hérite de toutes les propriétés et méthodes de l´objet Node. Cependant, l´objet attribute n´hérite pas de certaines propriétés de l´objet Node dans IE pour Windows avant la version 6, bien qu´elles soient implémentées pour les noeuds d´élément et de texte dans la version 5. |
|||||
Equivalent HTML | |||||
Toute paire nom/valeur dans une balise de début. |
|||||
Référence de modèle d'objet | |||||
[window.]document.getElementById("elementID").attributes[i] [window.]document.getElementById("elementID").attributes.item(i) [window.]document.getElementById("elementID").attributes.getNamedItem[attrName] |
|||||
Propriétés spécifiques à l´objet | |||||
|
|||||
Méthodes spécifiques à l´objet | |||||
Aucune. |
|||||
Propriétés de gestionnaire d´événements spécifiques à l´objet | |||||
Aucune. |
expando | NN s.o. IE 6 DOM s.o. |
Lecture seule | |
Renvoie la valeur booléenne true si l´attribut, une fois inséré dans un élément, n´est pas l´un des attributs d´origine de l´élément. Cette propriété est false pour un attribut créé par document.createAttribute() jusqu´à ce que l´attribut soit ajouté à l´élément (avec la méthode setAttributeNode()), moment auquel la valeur de la propriété est réévaluée dans le contexte des attributs d´origine de l´élément. |
|
Exemple | |
var isCustomAttr = document.getElementById("book3928").getAttributeNode("author").expando; |
|
Valeur | |
Valeur booléenne: true | false. |
|
Par défaut | |
false |
name | NN 6 IE 5 DOM 1 |
Lecture seule | |
La partie « nom » de la paire nom/valeur de l´attribut. Elle est identique à la propriété nodeName du noeud Attr. Vous ne pouvez pas modifier le nom d´un attribut par script car d´autres dépendances pourraient poser des problèmes dans l´arborescence de documents. Cependant, vous pouvez remplacer l´ancien attribut en en créant un nouveau, dont le nom est un paramètre requis de la méthode document.createAttribute(). |
|
Exemple | |
if (myAttr.name == "author") { // process author attribute } |
|
Valeur | |
Valeur de chaîne. |
|
Par défaut | |
Chaîne vide, bien que la création d´un nouvel attribut nécessite un nom. |
ownerElement | NN 6 IE s.o DOM 2 |
Lecture seule | |
Référence à l´élément contenant l´objet attribut actuel. Jusqu´à l´insertion d´un nouvel attribut dans un élément, cette propriété est null. |
|
Exemple | |
if (myAttr.ownerElement.tagName == "fred") { // process attribute of <fred> element } |
|
Valeur | |
Référence de noeud de l´élément. |
|
Par défaut | |
null |
specified | NN 6 IE 5 DOM 1 |
Lecture seule | |
Renvoie la valeur booléenne true si la valeur de l´attribut est explicitement affectée dans le code source ou ajustée par le script. Si le navigateur représente un attribut qui n´est pas explicitement défini (comme cela se produit avec IE), la propriété specified pour cette valeur est false, bien qu´il soit possible que l´attribut ait une valeur par défaut déterminée par la DTD du document. Le niveau 2 du DOM W3C indique que la propriété specified d´un objet Attr créé récemment doit être true, mais IE 6 ainsi que Netscape 6.2 et les versions ultérieures la laisse comme false jusqu´à l´insertion de l´attribut dans un élément. |
|
Exemple | |
if (myAttr.specified) { // process attribute whose value is something other than DTD default } |
|
Valeur | |
Valeur booléenne: true | false. |
|
Par défaut | |
false |
value | NN 6 IE 6 DOM 1 |
Lecture/écriture | |
La partie « valeur » de la paire nom/valeur de l´attribut. Identique à la propriété nodeValue du noeud Attr, ainsi qu´aux données auxquelles l´accès se fait plus directement avec les méthodes getAttribute() et setAttribute() d´un élément. Si vous créez un nouvel objet attribut, vous pouvez affecter sa valeur avec la propriété value avant d´insérer l´attribut dans l´élément. Les valeurs de noeuds d´attributs sont toujours des chaînes, y compris dans IE, qui sinon autorise les types de données Nombre ou Booléen pour les propriétés correspondantes. |
|
Exemple | |
document.getElementById("hamlet").getAttributeNode("author").value = "Shakespeare"; |
|
Valeur | |
Valeur de chaîne. |
|
Par défaut | |
Chaîne vide, sauf dans IE pour Windows, qui renvoie la chaîne undefined (c´est-à-dire pas une valeur dont le type est évalué à la valeur undefined). |