Element#
Element.tagName#
Właściwość tagName
zwraca nazwę kwalifikowaną dla danego elementu. Właściwość jest tylko do odczytu.
Opis działania#
Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:
var tag_name = element.tagName;
gdzie poszczególne człony oznaczają:
- tag_name - łańcuch znakowy reprezentujący nazwę kwalifikowaną elementu.
- element - węzeł będący obiektem kontekstu.
Algorytm odczytu z właściwości tagName
nie jest skomplikowany. Dla lepszego zrozumienia tematu prezentuję go w całości:
- Niech qualifiedName będzie nazwę kwalifikowaną w obiekcie kontekstu.
- Jeśli obiekt kontekstu znajduje się w przestrzeni nazw HTML oraz jego właścicielem jest dokument HTML, to niech qualifiedName zostanie przekonwertowana na wielkie znaki ASCII.
- Zwróć qualifiedName.
Właściwość tagName
ma identyczne działanie jak właściwość Node.nodeName
, dotyczy to wszystkich elementów, niezależnie od rodzaju dokumentu (XML i jego pochodnych czy HTML). Wymienność z właściwością Element.localName
będzie zachodzić w przypadku elementów bez prefiksu przestrzeni nazw i z ewentualną konwersją wszystkich odpowiadających wartości na małe lub duże litery jeśli mamy do czynienia z dokumentami HTML oraz elementami w przestrzeni nazw HTML.
Prosty przykład:
<script>
var html = document.documentElement; // referencja do elementu HTML
document.write("document.documentElement");
document.write("<br>");
document.write("Interfejs:" + html); // [object HTMLHtmlElement]
document.write("<br>");
document.write("Właściwość namespaceURI: " + html.namespaceURI); // http://www.w3.org/1999/xhtml
document.write("<br>");
document.write("Właściwość localName: " + html.localName); // html
document.write("<br>");
document.write("Właściwość nodeName: " + html.nodeName); // HTML
document.write("<br>");
document.write("Właściwość tagName: " + html.tagName); // HTML
document.write("<br><br>");
var newElement1 = document.createElementNS("moja_przestrzeń_nazw", "test:p");
document.write("document.createElementNS('moja_przestrzeń_nazw', 'test:p');");
document.write("<br>");
document.write("Interfejs:" + newElement1); // [object Element]
document.write("<br>");
document.write("Właściwość namespaceURI: " + newElement1.namespaceURI); // moja_przestrzeń_nazw
document.write("<br>");
document.write("Właściwość localName: " + newElement1.localName); // p
document.write("<br>");
document.write("Właściwość nodeName: " + newElement1.nodeName); // test:p
document.write("<br>");
document.write("Właściwość tagName: " + newElement1.tagName); // test:p
document.write("<br><br>");
var newElement2 = document.createElementNS("http://www.w3.org/1999/xhtml", "test:p");
document.write("document.createElementNS('http://www.w3.org/1999/xhtml', 'test:p');");
document.write("<br>");
document.write("Interfejs:" + newElement2); // [object HTMLParagraphElement]
document.write("<br>");
document.write("Właściwość namespaceURI: " + newElement2.namespaceURI); // http://www.w3.org/1999/xhtml
document.write("<br>");
document.write("Właściwość localName: " + newElement2.localName); // p
document.write("<br>");
document.write("Właściwość nodeName: " + newElement2.nodeName); // TEST:P
document.write("<br>");
document.write("Właściwość tagName: " + newElement2.tagName); // TEST:P
document.write("<br><br>");
var newElement3 = document.createElementNS("http://www.w3.org/1999/xhtml", "test:nowy");
document.write("document.createElementNS('http://www.w3.org/1999/xhtml', 'test:nowy');");
document.write("<br>");
document.write("Interfejs:" + newElement3); // [object HTMLUnknownElement]
document.write("<br>");
document.write("Właściwość namespaceURI: " + newElement3.namespaceURI); // http://www.w3.org/1999/xhtml
document.write("<br>");
document.write("Właściwość localName: " + newElement3.localName); // p
document.write("<br>");
document.write("Właściwość nodeName: " + newElement3.nodeName); // TEST:P
document.write("<br>");
document.write("Właściwość tagName: " + newElement3.tagName); // TEST:P
document.write("<br><br>");
var newDoc = document.implementation.createDocument(null, "html", null); // nowy dokument XML
var newElement4 = newDoc.createElementNS("http://www.w3.org/1999/xhtml", "test:p");
document.write("newDoc.createElementNS('http://www.w3.org/1999/xhtml', 'test:p');");
document.write("<br>");
document.write("Interfejs:" + newElement4); // [object HTMLParagraphElement]
document.write("<br>");
document.write("Właściwość namespaceURI: " + newElement4.namespaceURI); // http://www.w3.org/1999/xhtml
document.write("<br>");
document.write("Właściwość localName: " + newElement4.localName); // p
document.write("<br>");
document.write("Właściwość nodeName: " + newElement4.nodeName); // test:p
document.write("<br>");
document.write("Właściwość tagName: " + newElement4.tagName); // test:p
</script>
Składnia Web IDL#
interface Element : Node { readonly attribute DOMString tagName; }