Giorno 16: Non aprite nuove finestre
Una cosa che ogni utente del web capisce è il bottone “Indietro”. E’ parte integrante della navigazione. Seguire un link, e tornare indietro. Esplorare i risultati di un ricerca, e tornare indietro. Anche mio padre può farlo, ed è ancora eccitato di poter fare doppio click, al primo colpo, sull’icona per l’accesso ad Internet.
In tutti i principali browser, se usate il tag <a class="external">
forzando l’apertura di un link in una nuova finestra, interrromperete la funzione del bottone ”Indietro”. La nuova finestra non ricorda la precedente e dunque il bottone “Indietro” è disabilitato ed inutilizzabile. Ciò confonde terribilmente anche me, che utilizzo il web da dieci anni. Nel 2002, è divertente che ci sia qualcuno che apre nuove finestre. Non fatelo. Non forzate l’apertura di nuove finestre.
Questo suggerimento vi riguarda come progettista web, non come utente. Ma se volete aprire una nuova finestra mentre navigate, ecco come fare. In Internet Explorer per Windows, premete il tasto Shift mentre fate click su un link e lo aprirete in una nuova finestra. In Netscape 6 e Mozilla, tenete premuto il tasto Control. In Internet Explorer per Mac, tenete premuto il tasto Command. (Alcuni browser come Opera consentono combinazioni avanzate quali Control + Shift + click per aprire un link in una finestra in background.) Il punto è che la scelta se il link debba aprirsi in una nuova finestra, o meno, deve essere dell’utente, non del progettista web.
A chi serve?
- A Jackie. Anche se JAWS annuncia “New browser window” quando un link si apre in una nuova finestra, questo sfugge facilmente essendo incastrato tra la lettura del testo del link e la nuova pagina. Home Page Reader ha una soluzione migliore; suona in modo diverso ogni volta che apre una nuova finesta. E Window Eyes, un’altro popolare lettore di schermo, non dà alcuna indicazione del tutto.
E, comunque, il bottone ”Indietro” non è più funzionante. Se a Jackie sfugge l’annuncio del “new browser window”, non può dare un’occhiata alla barra delle applicazioni attive (taskbar) e verificare che ha due finestre del browser aperte. Dovrà leggere l’intera lista delle finestre aperte grazie alla scorciatoia di tastiera specifica di JAWS INSERT+F10 o con la normale combinazione ALT+TAB. - A Lillian. La finestra di Internet Explorer è sempre a pieno schermo (così da poterla vedere meglio), e le nuove finestre si aprono normalmente già a schermo interno. Inoltre, Windows XP raggruppa le finestre multiple di una stessa applicazione nella barra delle applicazioni, così da nascondere qualsiasi indicazione circa l’apertura di finestre successive dello stesso programma. Immediatamente il bottone ”Indietro” è disabilitato senza ragioni apparenti, e Lillian non ha idea del perchè. Se vi aspettate che legga il resto del vostro sito seguendo quel link, potete scordarvelo.
- A Bill. La sorella ha predisposto Mozilla in modo che possa navigare in modalità tab, cosicchè Bill può guardare ai tab e subito ricordarsi quali finestre ha aperto, e può scorrerle, passando da una all’altra, con semplicità (con CTRL+PAGEUP e CTRL+ PAGEDOWN sulla sua tastiera aggiuntiva). I link forzati ad aprirsi in una nuova finestra, si aprono in una nuova finestra di Mozilla. Non solo questo fa saltare la sua impostazione di navigazione tramite tab, ma gli farà sembrare sparite tutte le finestre, perchè la nuova finestra non mostrerà più i tab aperti in quella precedente.
Come fare
- Non usare
<a class="external">
per forzare l’apertura di un link in una nuova finestra.
Se dovete assolutamente aprire un link in una nuova finestra, avvisate esplicitamente il lettore. Questa soluzione di compromesso, sicuramente non ottimale, è spesso utilizzata quando si vuole avvisare l’utenza che il link rilancia ad un sito in nessun modo correlato con il proprio. Per esempio è utilizzata dalla CNN per l’accesso a siti esterni correlati ad una notizia, come in CNN’s “related sites” . - Se avete attiva la selezione “Links open new windows” assicuratevi che sia preimpostata ad off.
Approfondimenti
- Jakob Nielsen: The Top Ten New Mistakes of Web Design. “#1: Breaking or Slowing Down the Back Button. #2: Opening New Browser Windows.”
- W3C Web Accessibility Initiative: Example for Checkpoint 10.1 fornisce un’esempio di come avvisare l’utente che il link si aprirà una nuova finestra.
- W3C Validator mailing list: Re: opening a link in a new window. Per coloro che si preoccupano di queste cose, dovreste sapere che l’uso dell’attributo
target
nel tag<a>
è deprecato e vi impedirà dal farvi convalidare la sintassi della vostra pagina in HTML 4.01 Strict, XHTML 1.0 Strict, o versioni successive. - WebAIMmailing list:
mailto:
links open new windows. I linkmailto:
non riguardano l’accessibilità anche se generalmente apriranno il programma di posta elettronica in una nuova finestra, perchè il comportamento è completamente determinato dall’apparato locale. In alternativa un modulo web per l’email (come in Radio) può essere una soluzione complessivamente migliore, ammeso che il modulo stesso sia accessibile. Questo modulo funzionerà per i visitatori senza un gestore di posta integrato (per errore nella configurazione, o più semplicemente per la circostanza d’utilizzo, quali in una postazione pubblica), oltre a proteggere il vostro indirizzo di posta dai programmi che li catturano per utilizzi impropri (quali lo spam) senza per questo affidarsi a inaccessibili programmi Javascript. D’altro canto a qualcuno piace davvero usare il proprio programma di posta perchè familare, più funzionale (controllo ortografico integrato, per esempio) e per la possibilità di archiviare la posta spedita. Non raccomando un metodo più dell’altro.