Selector-API wird W3C-Standard
Das W3C hat die Schnittstelle zur "Recommendation" und damit zum De-Facto-Standard erhoben. Mit ihr lassen sich DOM-Elemente komfortabel durch Angabe von CSS-Selektoren auswählen.
- Christian Kirsch
Was viele JavaScript-Frameworks, insbesondere jQuery, vorgemacht und etliche Browser nachgebaut haben, sanktioniert das W3C nun mit der "Selectors API Level 1": DOM-Elemente durch Angabe eines CSS-Selektors auszuwählen. Dieses Verfahren ist wesentlich komfortabler als die Kombination von getElementById
mit getElementsByTagName
und Schleifen.
Die API besteht nur aus zwei JavaScript-Methoden: querySelector
und querySelectorAll
. Beide erwarten einen CSS-Selektor als Zeichenkette, etwa #score>tbody>tr>td:nth-of-type(2)
. Als Rückgabewert liefert querySelectorAll
alle passenden DOM-Elemente, querySelector
nur das erste.
Diese NodeList
ist jedoch statisch, anders als das Resultat von getElementsByTagName
. Sie verändert sich also nicht, wenn etwa nach dem Aufruf von querySelectorAll
dem DOM ein weiteres Element hinzugefügt wird, das ebenfalls auf den gewählten Selektor passt.
Beide Methoden sind für die Klassen Document
, DocumentFragment
und Element
definiert und suchen jeweils innerhalb des Objekts, an dem sie aufgerufen werden. Den Tabellen auf caniuse.com zufolge unterstützen alle relevanten Browser sie bereits seit längerem.
(ck)