Bénéfice 1 :
Si ce dispositif est prévu, les personnes utilisant des navigateurs qui ne gèrent pas les scripts côté client ou qui désactivent volontairement les scripts dans leur navigateur auront accès à l'information contenue dans la pop-up.
Valeur ajoutée pour le site
Bénéfice 1 :
La mise en place d'une alternative au script qui déclenche l'ouverture d'une nouvelle fenêtre permet de donner accès à l'information à une plus large audience.
Repérer l'ensemble des mots-clés de type "open" et "window".
S'ils sont présents, vérifier qu'une solution équivalente au script qui ouvre une nouvelle fenêtre est proposée.
Par l'utilisation d'outils
Pour une liste complète des outils utilisés pour évaluer l'accessibilité des pages web, et un résumé de leurs principales fonctionnalités, reportez-vous à la page Outils d'aide à l'évaluation.
Evaluer avec la barre AccessiWeb (version 1.0) :
Sous Internet Explorer, ouvrir la page à analyser.
Dans le menu "13: Contenus accessibles" de la Barre AccessiWeb, activer le critère 13.4.
Les liens qui déclenchent l'ouverture de nouvelles fenêtres sont affichés dans la page et une nouvelle fenêtre permet d'en connaître le nombre (que cela soit par un script JavaScript ou un élément target).
Si présent, vérifier qu'une solution alternative est proposée pour tout script ouvrant une nouvelle fenêtre.
Note : pour enlever les liens javascripts de la page, recharger la page en cliquant sur la touche F5.
Evaluer avec la barre d'accessibilité AIS pour Internet Explorer (version 1.2 en français) :
Dans "Structure", cliquer sur "liens javascripts nouvelle fenêtre".
Les liens qui déclenchent l'ouverture de nouvelles fenêtres sont indiqués dans la page. Une alerte permet d'en connaître le nombre (que cela soit par un script JavaScript ou un target).
Si présent, vérifier qu'une solution alternative est proposée pour tout script ouvrant une nouvelle fenêtre.
Evaluer avec la Barre d'Outils Web Developper pour Firefox (version
1.0.2 en français) :
Activer l'option "Voir Source" du menu "Voir Source".
Une nouvelle fenêtre apparaît et affiche le code source.
Repérer l'ensemble des mots-clés de type "open" et "window". Ce test permet de détecter la présence ou non de scripts déclenchant l'ouverture de nouvelles fenêtres.
Si présent, vérifier qu'une solution alternative est proposée pour tout script ouvrant une nouvelle fenêtre.
Evaluer avec le lecteur d'écran Jaws (version 5 et 6.2 en français) :
Ce critère n'est pas évaluable par le lecteur d'écran Jaws.
Le développeur doit veiller au respect de ce critère.
Implémentation
Il faut prévoir systématiquement une alternative aux scripts qui déclenchent l'ouverture de nouvelles fenêtres :
soit par l'utilisation de la balise NOSCRIPT qui doit contenir un lien classique renvoyant vers le même contenu,
soit en incluant le lien dans le script lui-même. Ainsi, même lorsque les scripts ne sont pas pris en charge par le navigateur, la destination du lien reste accessible. (Voir l'étude de cas).
Exemple de mauvaise pratique
La mauvaise pratique consiste à n'offrir aucune alternative aux scripts qui déclenchent l'ouverture d'une nouvelle fenêtre. En effet, les utilisateurs dont le navigateur ne gère pas les scripts, ou qui bloquent volontairement les scripts, n'auront jamais accès à l'information contenue dans ces fenêtres.
Exemple de bonne pratique
Voici une façon de coder proprement une ouverture de fenêtre qui permette :
de ne pas ouvrir de nouvelle fenêtre à chaque clic,
de respecter le critère 13.3 (prévenir l'utilisateur de l'ouverture d'une nouvelle fenêtre),
de mettre la fenêtre en avant-plan si elle était déjà ouverte (pour les utilisateurs de navigateurs interprétant JavaScript),
d'ouvrir quand même la fenêtre sur un navigateur n'interprétant pas les scripts clients.
<script type="text/javascript" language="javascript"> <!-- var wdw = null; function OpenWindowByTarget(target,url,width,height,top,left) { var options='menubar=yes,toolbar=yes,resizable=yes,scrollbars=yes'; wdw = window.open(url,target,"top="+top+",left="+left+",width="+width+",height="+height+","+options); wdw.focus(); return false; } --> </script> <a href="aide.asp" onclick="return OpenWindowByTarget(this.target,this.href,500,600,0,0)" target="aide" title="Aide (nouvelle fenêtre)">Aide</a>
Cet autre exemple permet lui aussi à un lien d'ouvrir la nouvelle fenêtre sur un navigateur n'interprétant pas les scripts clients :
Fiche 7.1 : Si un script nécessite une alternative pour être accessible, l'information donnée par cette alternative est-elle équivalente à l'information fournie par le script ?
Fiche 13.3 : Le visiteur est-il averti lorsque de nouvelles fenêtres apparaissent ?