Fehlende aria-activedescendant-ID
Silktide überprüft jedes aria-activedescendant-Attribut auf Ihren Seiten und prüft, ob die Element-ID, auf die es verweist, tatsächlich existiert. Dieses Attribut teilt mit, welches Element innerhalb eines Widgets, etwa einer Dropdown-Liste, derzeit hervorgehoben ist.
<!-- Problem: Auf der Seite hat kein Element die id="opt-2" -->
<ul role="listbox" aria-activedescendant="opt-2">
<li role="option" id="opt-1">Erste Option</li>
</ul>
Warum das wichtig ist
Widgets wie benutzerdefinierte Dropdown-Listen, Kombinationsfelder und Raster behalten den
auf dem Container und verwenden das
-Attribut aria-activedescendant, um anzugeben,
welches Element darin aktiv ist. Zeigt die Referenz auf eine ID, die nicht
existiert, hört ein -Nutzer beim Navigieren
durch die Optionen nichts – das Widget scheint überhaupt keine Auswahl zu haben und ist
für Personen ohne Sehvermögen unbenutzbar.
So beheben Sie das Problem
- Lassen Sie das Attribut auf die
iddes aktuell aktiven Elements verweisen und aktualisieren Sie es, während die Benutzer durch das Widget navigieren. - Wenn das Widget seine Elemente neu rendert, stellen Sie sicher, dass die neuen Elemente stabile
IDs beibehalten, oder aktualisieren Sie
aria-activedescendantim selben Schritt. - Entfernen Sie das Attribut, wenn das Widget nicht mehr existiert oder den Fokus stattdessen direkt verwaltet.
So testet Silktide dies
- Alle Elemente auf der Seite mit einem
aria-activedescendant- Attribut finden. - Die referenzierte ID mit den auf der Seite vorhandenen Element-IDs abgleichen.
- Jede Referenz melden, die zu keinem Element passt.
Fehlerbehebung
Das Ziel wird erst später durch ein Skript erstellt
Silktide testet die Seite während des Ladens. Existiert das referenzierte Element
erst nach einer Benutzerinteraktion, ist die Referenz in der Zwischenzeit trotzdem ungültig – setzen
Sie aria-activedescendant erst, sobald sein Ziel existiert.
Diese Prüfung meldet nichts, obwohl ich Funde erwarte
ARIA-Tests können pro Website deaktiviert werden. Prüfen Sie die erweiterten Einstellungen der Website.