Podsumowanie
getAttributeNS
zwraca ciąg z wartością atrybutu o podanej nazwie i przestrzeni nazw. Jeśli nie ma atrybutu o takiego atrybutu, zwrócone zostanie null
bądź ""
(pust ciąg) - zob. Uwagi.
Składnia
wartośćAtr =element.getAttributeNS(przestrzeńNazw,nazwa)
Parametry
wartośćAtr
to ciąg z wartością podanego atrybutuprzestrzeńNazw
to przestrzeń nazw atrybutunazwa
to nazwa atrybutu.
Przykład
var div1 = document.getElementById("div1"); var a = div1.getAttributeNS("www.mozilla.org/ns/specialspace/", "special-align"); alert(a); // wyświetli zawartość special-align elementu div
Uwagi
getAttributeNS
różni się od getAttribute tym, że pozwala Ci określić do jakiej przestrzeni nazw należy atrybut, tak jak w powyższym przykładzie, gdzie atrybut należał do fikcyjnej przestrzeni "specialspace".
W zasadzie wszystkie przeglądarki (Firefox, Internet Explorer, nowsze wersje Opery, Safari, Konqueror oraz iCab) zwracają null
, jeśli bieżący element nie posiada atrybutu o podanej nazwie. Specyfikacja DOM mówi, że w takiej sytuacji powinien być zwracany pusty ciąg znaków i niektórze implementacje DOM tak się zachowują. Zatem jeśli jest możliwe, że element nie posiada żądanego atrybutu, powinieneś użyć metody hasAttributeNS aby sprawdzić istnienie atrybutu zanim wywołasz getAttributeNS
.
Metody DOM do obsługi atrybutów to:
DOM Level 1 (brak obsługi przestrzeni nazw, najczęściej używane) | DOM Level 2 (obsługa przestrzeni nazw) | DOM Level 1 - praca bezpośrednio z węzłami Attr (rzadko używane) |
DOM Level 2 - praca bezpośrednio z węzłami Attr , z obsługą przestrzeni nazw (rzadko używane) |
---|---|---|---|
setAttribute (DOM 1) |
setAttributeNS |
setAttributeNode |
setAttributeNodeNS |
getAttribute (DOM 1) |
getAttributeNS |
getAttributeNode |
getAttributeNodeNS |
hasAttribute (DOM 2) |
hasAttributeNS |
- | - |
removeAttribute (DOM 1) |
removeAttributeNS |
removeAttributeNode |
- |
Specyfikacja
DOM Level 2 Core: getAttributeNS