Attr.namespaceURI
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
La propriété en lecture seule Attr.namespaceURI
retourne l'URI d'espace de nom de l'attribut, ou null
si l'élément n'est pas dans un espace de noms.
Note :
Avant DOM4 cet API était défini dans l'interface Node
.
Syntaxe
namespace = attribute.namespaceURI;
Exemple
Dans cet extrait de code, un attribut est examiné pour son localName
et son namespaceURI
. Si le namespaceURI
renvoie l'espace de noms XUL et le localName
retourne "browser" (navigateur), alors le noeud est compris comme étant un <browser/>
XUL.
if (
attribute.localName == "value" &&
attribute.namespaceURI ==
"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
) {
// ceci est une valeur XUL
}
Notes
Ce n'est pas une valeur calculée, mais le résultat d'une recherche d'espace de noms basée sur un examen des déclarations d'espace de noms dans la portée. L'URI de l'espace de noms d'un attribut est figé à l'heure de création de l'attribut.
Dans Firefox 3.5 et précédents, l'URI d'espace de nom pour les attributs HTML dans les documents HTML est null
. Dans les versions ultérieures, en conformité avec HTML5, il est https://www.w3.org/1999/xhtml
comme dans XHTML.
Vous pouvez créer un attribut avec le namespaceURI
spécifié en utilisant la méthode de DOM niveau 2 Element.setAttributeNS
.
Selon la spécification Namespaces en XML, un attribut n'hérite pas de l'espace de noms de l'élément auquel il est attaché. Si un attribut n'est pas explicitement donné à un espace de noms, il n'a pas d'espace de noms.
Le DOM ne gère pas ou n'applique pas la validation de l'espace de noms en soi. Il appartient à l'application DOM de faire toute validation nécessaire. Notez également que le préfixe d'espace de noms, une fois associé à un nœud particulier, ne peut pas être modifié.
Spécifications
Specification |
---|
DOM Standard # dom-attr-namespaceuri |
Compatibilité des navigateurs
BCD tables only load in the browser