Hallo Sebastian,
die Sicherheitsabfrage würde ich nicht auf parentNode.id == 'tablist' machen, sondern auf target.getAttribute("role") == 'tab'. Denn Du möchtest den Klick auf ein Tab erkennen. Kinder von tablist könnte es noch andere geben.
Und so wie ich das sehe, krankt das Beispiel an weiteren Stellen.
-
der Parameter für clickHandler heißt
elem
, ist aber kein Element, sondern das Event-Objekt. Er müsste also event oder clickEvent heißen. -
das Beispiel macht <li> Elemente klickbar, statt Buttons in die <li> einzusetzen. <li> Elemente sind nicht interaktiv, das kann nicht richtig sein. Da gehören eigentlich Buttons in die <li> Elemente hinein, dann kann man auch clickEvent.target.tagName == 'BUTTON' abfragen und die Tastaturbedienung ist auch einfacher. Aber vielleicht bin ich da auch nicht up-to-date was Widget-Bau mit Aria angeht.
Rolf
sumpsi - posui - obstruxi