Vai al contenuto
SilktideAiuto

ID aria-activedescendant mancante

Silktide controlla ogni attributo aria-activedescendant presente nelle tue pagine e verifica che l'ID dell'elemento a cui fa riferimento esista effettivamente. Questo attributo indica alla quale elemento all'interno di un widget, come un elenco a discesa, è attualmente evidenziato.

<!-- Problema: nessun elemento nella pagina ha id="opt-2" -->
<ul role="listbox" aria-activedescendant="opt-2">
  <li role="option" id="opt-1">Prima opzione</li>
</ul>

Perché è importante

I widget come gli elenchi a discesa personalizzati, le caselle combinate e le griglie mantengono sul contenitore e usano l'attributo aria-activedescendant di per indicare quale elemento al loro interno è attivo. Quando il riferimento punta a un ID che non esiste, un utente di non sente nulla mentre si sposta tra le opzioni: il widget sembra non avere alcuna selezione, risultando inutilizzabile senza poter vedere.

Come risolvere il problema

  1. Fai in modo che l'attributo faccia riferimento all'id dell'elemento attualmente attivo e aggiornalo quando l'utente si sposta all'interno del widget.
  2. Se il widget esegue nuovamente il rendering dei suoi elementi, assicurati che i nuovi elementi mantengano ID stabili oppure aggiorna aria-activedescendant nella stessa operazione.
  3. Rimuovi l'attributo se il widget non esiste più o gestisce direttamente il focus.

Come Silktide esegue il controllo

  1. Trova ogni elemento nella pagina con un attributo aria-activedescendant.
  2. Confronta l'ID a cui fa riferimento con gli ID degli elementi presenti nella pagina.
  3. Segnala ogni riferimento che non corrisponde ad alcun elemento.

Risoluzione dei problemi

La destinazione viene creata successivamente da uno script

Silktide controlla la pagina durante il caricamento. Se l'elemento a cui si fa riferimento esiste solo dopo un'interazione dell'utente, nel frattempo il riferimento è comunque errato: imposta aria-activedescendant solo quando la sua destinazione esiste.

Questo controllo non segnala nulla anche se mi aspettavo dei risultati

I test ARIA possono essere disattivati per ogni sito web. Controlla le impostazioni avanzate del sito web.

Per saperne di più

Ultimo aggiornamento

Questa pagina è stata utile?

ID aria-activedescendant mancante | Guida di Silktide