Ciao al team!
Questo è più un resoconto veloce. Ho appena notato in un altro thread che il pulsante Mi piace a volte non ha un’etichetta di accessibilità. Non ho ancora individuato il pattern. Ma potrebbe avere a che fare con il fatto che un post abbia già ricevuto uno o più Mi piace, o nessuno, e il controllo venga suddiviso per mostrarlo. A quel punto vedo due pulsanti. Uno riporta il conteggio, il secondo è senza etichetta.
L’ho provato e testato con molti casi diversi, ma non sono riuscito a riprodurlo. L’etichetta veniva sempre visualizzata, ma la prima volta richiede un certo ritardo, che è un comportamento generale dell’attributo title.
Presumo che il problema sia legato al tooltip fornito per il pulsante Mi piace. Siamo sulla stessa lunghezza d’onda?
Mi riferisco a ciò che lo screen reader pronuncia per il pulsante che premi per mettere “Mi piace” a un post. O forse puoi aggiungere altre reazioni in qualche modo, ma il mio screen reader non me ne informa affatto. L’unico elemento su cui ricevo un’etichetta è quello che mostra il conteggio attuale dei “Mi piace”, se è 1 o superiore. Se è 0, quel controllo non è presente. Tuttavia, il pulsante che devo premere per aggiungere una reazione “Mi piace” non ha un’etichetta per i miei screen reader su Windows, Mac e iOS.
Sono non vedente, quindi non uso il mouse. Inoltre, l’attributo title in generale è problematico per le interazioni touch, poiché solitamente non esiste un modo semplice per attivare un hover del mouse.
Spero che questo sia d’aiuto…
Per essere chiaro, mi riferisco al pulsante #discourse-reactions-actions-916340 > div > div.discourse-reactions-reaction-button.my-likes > button. Questo pulsante non ha né title né aria-label, contiene solo un SVG con aria-hidden impostato su true. E anche se non fosse così, né quel SVG né i suoi figli contengono informazioni utilizzabili da uno screen reader. La soluzione qui è quindi:
Assegnare a questo pulsante un aria-label che dica qualcosa come “Metti Mi piace a questo post” o “Reagisci con Mi piace” o simile. Poiché in futuro potrebbero esserci altre reazioni, questa formulazione deve essere esplicita riguardo a quale reazione viene aggiunta.
L’elemento che contiene il conteggio, #discourse-reactions-counter-916340, dovrebbe probabilmente fornire informazioni migliori su chi ha effettivamente reagito con quale reazione. Non so come le persone vedano accedano a queste informazioni, ad esempio cliccando sul numero e ottenendo un popup da qualche parte. Ma anche questo deve essere reso accessibile agli utenti di screen reader e tastiera.
Se in futuro verranno aggiunte altre reazioni, queste dovranno essere rese accessibili non solo per il mouse, ma anche per touch, tastiera e screen reader.
Al momento, almeno per me, il widget sembra permettere solo reazioni di tipo “Mi piace”.
Mi scuso per i molteplici messaggi, ma questo mostra quanto possa essere meticoloso il processo per individuare la causa di un problema. L’attributo title sui post che non sono i miei si trova attualmente sul div genitore del pulsante “Mi piace” effettivo. Tuttavia, perché uno screen reader lo rilevi, il title deve essere posto direttamente sul pulsante. Gli screen reader non rilevano i title da qualsiasi elemento. È stato abusato troppo in passato per generalizzare in questo modo negli ultimi 25 anni. Quindi, se sposti l’attributo title sull’elemento figlio <button>, lo screen reader lo rileverà correttamente.
Grazie! Aspetterò che questa istanza recuperi l’ultimo codice per il plugin. Non eseguo la mia istanza Discourse, quindi non ho un luogo dove poterlo recuperare. Grazie per la correzione rapida!