Una select più accessibile

Giovedì 3 Luglio 2008 - 11:20

di Cesare Lamanna

Scripting

Nella colonna destra di questo blog trovate una select che raccoglie i link agli archivi mensili. Come tantissime soluzioni simili, l’attivazione del link avviene con l’evento onChange. Nostra culpa, nostra grandissima culpa, non è proprio il massimo volendo rispettare un cardine fondamentale in fatto di accessibilità: con Javascript disabilitato, semplicemente, non funziona.

Sul suo blog David Walsh propone una soluzione in grado di superare il problema. Lo script verifica che il browser sia in grado di eseguire Javascript e in caso affermativo nasconde un pulsante di submit (preventivamente inserito nel codice HTML) che sarà invece regolarmente visibile con Javascript disabilitato e con cui sarà possibile attivare le voci del menu. A corredo della spiegazione anche una dimostrazione.

Tags:

Categoria: Scripting | Permalink

Commenti

1

Esiste una soluzione concettualmente più semplice e pulita di quella proposta:

si gestisce l’evento onchange sulla select e si include un pulsante di submit dentro un blocco ^noscript^ e ^/noscript^

# - postato da Fabrizio Calderan - 03 Luglio 2008 - 11:43

2

Per completare l’opera in fatto di accessibilità, occore inserire anche una pre label pre per la select

# - postato da Carlo - 03 Luglio 2008 - 11:48

3

effettivamente… il noscript e’ piuttosto semplice e alcune volte veramente efficace
non dimentichiamoci del label, forse se l’utente non ha javascript davvero necessita di questa informazione

# - postato da Martin Sarsini - 03 Luglio 2008 - 12:16

4

A proposito, io non riesco a inserire commenti in questo blog se ho javascript non abilitato

# - postato da Martin Sarsini - 03 Luglio 2008 - 12:17

5

Io personalmente preferisco sviluppare inizialmente come se il javascript non esistesse neppure e poi “posare” lo stesso sulla pagina tramite un paio di tag script: uno per caricare il js e uno che lancia una funzione con alcuni parametri (in genere il nome della pagina) che poi andrà a caricare funzioni specifiche che lavoreranno sul DOM.

C’è da dire che il contenuto di noscript viene visualizzato solamente quando il javascript è disabilitato quindi se volessi disabilitare il supporto alla funzione dovrei prima rimuovere il noscript e poi togliere la funzione invece di fare solamente quest’ultimo passaggio.

Se poi consideriamo che esistono cose tipo gli addon Greasemonkey o NoScript di Firefox che permettono di disabilitare solo alcuni script rischiamo di rendere la select completamente non funzionante.

Vabbe’ quest’ultima cosa è un po’ molto da “perfezionisti” :)

# - postato da Riot - 04 Luglio 2008 - 10:47

6

E’ semplicemente demenziale al giorno d’oggi il disabilitare Javascript (escluso per test).
E non venitemi a parlare i utenti mobili o disabili.

# - postato da PupazzoIntegrato - 04 Luglio 2008 - 14:50

7

@PupazzoIntegrato

Okay, ma potrei venirti a parlare tranquillamente di motori di ricerca, separazione del codice e manutenzione dello stesso :)

# - postato da Riot - 04 Luglio 2008 - 15:35

Inserisci il tuo commento:





(puoi usare i seguenti tag HTML per formattare il testo -
a href, b, i, br/, p, strong, em, ul, ol, li, blockquote, pre):

 

Anteprima del commento