TreeView: Accessibility
Zurück: Demo-Übersicht
1. Übersicht und Zweck
Status: Basis [Live] (natives <details>/<summary> +
aria-current), Erweiterungen für Selection/Checkbox
[Live].
2. Voraussetzungen
TreeView- Basiskontrakt bereits verstanden.
3. Konzepte
Native Semantik statt ARIA-Nachbau: <details>/<summary>
liefert Auf-/Zuklappen, Tastatur (Enter/Leertaste auf <summary>)
und die implizite ARIA-Rolle ohne eigenes JavaScript oder manuell
gesetzte ARIA-Attribute — das ist der Grund, warum tree() bewusst
dieses Element statt eines role="tree"-Nachbaus verwendet
(dieselbe Native-zuerst-Haltung wie beim
dataGrid()-
Table-Markup).
4. Erste Schritte
Entfällt — konsolidierte Referenzseite, kein eigener Aufruf.
5. Verwendung
Für eine Barrierefreiheits-Abnahme: Abschnitt 6 für die Navigations-Grundform, Abschnitt 7 sobald Selection aktiviert ist.
6. API-Referenz: [Live] Native Semantik
Aktive Link-Knoten (.wk-tree__link--active mit href) tragen
zusätzlich aria-current="page" — Browser/Screenreader
erkennen „aktuelle Seite„ nicht von selbst, das Attribut macht die visuelle
Aktiv-Markierung hörbar. Aktive Gruppenknoten ohne href (reine
<span>-Beschriftungen) bleiben ohne das Attribut, denn
aria-current beschreibt ein Navigationsziel, keinen Gruppentitel.
7. Parameter, Optionen und Zustände: role="tree" bei aktivierter Selection [Live]
Mit aktivem Auswahlmodell
(Selection/Checkboxes)
ändert sich das ARIA-Set: das äußere <ul> trägt
role="tree", jeder Knoten role="treeitem" + aria-level,
Gruppenknoten aria-expanded; der Checkbox-Modus meldet Teilauswahl als
aria-checked=„mixed“ (Client-Ableitung, scripts/treeview.js). Pfeil
hoch/runter wandern zwischen sichtbaren Knoten, Pfeil rechts/links öffnen/
schließen Gruppen — dieselbe Mechanik wie bei
dataGrid()
Selection, auf eine Baumstruktur übertragen. Die reine
Navigations-Grundform (Abschnitt 6) braucht dieses ARIA-Set nicht — es
gilt nur, sobald tatsächlich Auswahl aktiv ist.
8. Vollständige Beispiele
Entfällt — reine Referenzseite.
9. Einschränkungen und Randfälle
Keine über die Feature-Seiten hinaus.
10. Accessibility und Kompatibilität
Diese Seite ist der Accessibility-Überblick — Details in Abschnitt 6/7.
11. Troubleshooting
Symptom: Screenreader kündigt die aktuelle Seite im Baum nicht an.
Ursache: eine ältere Plugin-Version ohne dieses Attribut, oder ein Knoten
ohne href (dann korrekt kein aria-current, s. Abschnitt 6).
Lösung: Plugin-Version prüfen; bei einem echten Link-Knoten
active ⇒ true setzen.
12. Verwandte Themen
- Demo-Übersicht — alle Kategorien
- DataGrid: Accessibility — verwandtes Roving-Tabindex-Muster