Jour 16 : Ne pas ouvrir de nouvelles fenêtres

Il y a bien une chose que les internautes comprennent tous c'est le bouton "Retour" ou "Préc." (Back en anglais). C'est une des parties fondamentales de la navigation sur le Web. Suivre un lien et revenir en arrière. Même mon père peut faire cela et il est pourtant toujours excité quand il peut cliquer l'icône "Internet" avec succès au premier essai.

Dans tous les navigateurs principaux, en utilisant la balise <a target="_blank"> pour obliger l'ouverture du contenu dans une nouvelle fenêtre, cela casse le bouton Retour. La nouvelle fenêtre ne retient pas l'historique de navigation de la fenêtre précédente, ainsi le bouton "Retour" est désactivé. Cela est très génant, même pour moi et j'utilise pourtant le web depuis 10 ans. En 2002, il est toujours étonnant que les utilisateurs puissent faire encore cela. Ne le faites pas. Ne forcez pas l'ouverture des liens dans une nouvelle fenêtre.

Un peu plus tard : notez que cette astuce est pour vous en tant que concepteur Web et non pas vous en tant qu'utilisateur du Web. Si vous désirez ouvrir une nouvelle fenêtre lorsque vous naviguez, faites le. Dans Internet Explorer pour Windows, appuyez sur la touche Shift lorsque vous clicquez un lien pour ouvrir ce lien dans une nouvelle fenêtre. Dans Netscape 6 et Mozilla, appuyez sur Control. Dans Internet Explorer pour Mac, appuyez sur Command. (Certains navigateurs tels qu'Opera ont des combinaisons de touches multiples Control + Shift + click pour ouvrir un lien dans une nouvelle fenêtre mais en arrière de votre fenêtre.) En fait l'argument principal est que le choix d'ouvrir ou non un lien dans une nouvelle fenêtre devrait être uniquement celui de l'utilisateur final, non pas celui du concepteur Web.

Qui en bénéficie ?

  1. Jackie en bénéficie. Bien que JAWS annonce "Nouvelle fenêtre de navigation" quand un lien ouvre dans une nouvelle fenêtre, il est très facile de le rater et comme cela est prononcé la lecture du lien et la lecture de la nouvelle page peuvent être confondues. Home Page Reader a une meilleure solution ; il produit un son particulier chaque fois que vous ouvrez une nouvelle fenêtre. Et Window Eyes, un autre lecteur d'écran connu, ne donne aucune indication à l'ouverture de nouvelle fenêtre.

    De toutes façons, le bouton "Retour" est toujours cassé. Si Jackie rate l'annonce "nouvelle fenêtre de navigation", elle ne pourra pas simplement regarder à sa barre des applications et voir que deux fenêtres sont ouvertes. Elle devra vérifier la liste entière de toutes cette fenêtre ouverte, toujours en utilisant le raccourci clavier spécifique à JAWS INSERT+F10 pour obtenir la liste des fenêtres ou la combinaison habituelle ALT+TAB.

  2. Liliane en bénéficie. Sa fenêtre Internet Explorer window est toujours maximisée (ainsi elle peut la voir) et toute nouvelle fenêtre est maximisée par défaut. De plus, Windows XP groupe toutes les fenêtres d'une même application dans la barre des applications, il n'y a donc pratiquement aucun repère visuel qu'une nouvelle fenêtre a été ouverte. Soudainement, le bouton "Retour" a été désactivé pour aucune raison apparente et Liliane n'a aucune idée du pourquoi. Si vous espériez qu'elle lise le reste de votre site web après qu'elle est sélectionné ce lien, vous pouvez faire une croix dessus.

  3. Guillaume en bénéficie. sa soeur a paramétré Mozilla pour utiliser le système des onglets pour les fenêtres, ainsi Guillaume peut voir les onglets et se souvenir rapidement quelles fenêtres il a ouvert et également il peut également passer de l'une à l'autre rapidement (en utilisant CTRL+PAGEUP et CTRL+PAGEDOWN avec son système d'extension de clavier très pratique). Les liens dont on force l'ouverture dans une nouvelle fenêtre s'ouvriront tout à fait dans une nouvelle fenêtre Mozilla. D'une part cela supplantera sa préférence de navigation par onglets, mais de plus toutes ces fenêtres déjà ouvertes semblement disparaître puisque la nouvelle fenêtre ne montrera pas les onglets de la fenêtre précédente.

Comment le réaliser ?

  1. Ne pas utiliser <a target="_blank"> pour focer les liens à souvrir dans une nouvelle fenêtre.
  2. Si vous devez absolument ouvrir un lien dans une nouvelle fenêtre, avertissez explicitement l'utilisateur. C'est une solution pas optimale, qui a été introduite par les exigences de certaines compagnies de "distinction" de leur contenu avec le contenu externe. Par exemple, la page de CNN "sites relatifs" fait ceci.
  3. Si vous avez une case à cocher "Ouverture des liens dans une nouvelle fenêtre", soyez sûr de la désactiver par défaut.

Approfondir

  • Jakob Nielsen : The Top Ten New Mistakes of Web Design. "no 1 : Casser ou Modifier le bouton "Retour". no 2 : Ouvrir de nouvelles fenêtre de navigation."
  • W3C Web Accessibility Initiative: Example for Checkpoint 10.1 donne un exemple sur la manière d'avertir les utilisateurs si vous avez un lien unique qui doit absolument ouvrir une nouvelle fenêtre.
  • Liste de discussion du validateur HTML du W3C : Re: opening a link in a new window. Pour ceux qui se sentent concernés par ce genre de chose, vous devriez savoir que l'attribut target de la balise <a> est déconseillé et vous empêchera de valider votre page en HTML 4.01 Strict, XHTML 1.0 Strict ou toute autre future version.
  • Liste de discussion WebAIM : Les liens mailto: ouvrent dans une nouvelle fenêtre. Le consensus est que les liens mailto: ne représente pas des problèmes d'accessibilté, même s'ils ouvrent généralement votre client mail dans une nouvelle fenêtre parce-que ce comportement est complètement déterminé du côté client. Un formulaire Web pour le mail (tel que l'utilise Radio) peut être une meilleurse solution, si le formulaire en question est accessible. Un formulaire Web marchera également pour ceux qui n'ont pas de client mail intégré et il protégera votre adresse des robots collecteurs d'adresses mails sans avoir à inventer des pièges Javascript. D'un autre côté, certaines personnes aiment vraiment leur logiciels de mail à cause de leur habitude, des fonctionnalités (comme les vérificateurs d'orthographe) et la possibilité de rechercher dans les archives des messages envoyés. Je ne recommande aucune méthode plus qu'une autre.