mais : <a href="hello.html" onclick="hello(); return false;"onkeypress="hello(); return false;">say hello</a>
Si des gestionnaires d’événement sont utilisés, mettez-vous à la place de vos utilisateurs potentiels. Il importe d’utiliser des gestionnaires d’événements
logiques (onfocus / onblur / onselect , mais ils ne sont pas toujours correctement implémentés / supportés) ou des combinaisons de gestionnaires d’événements.
<p><a href="hello.html" onclick="javascript:alert('hello');return false;"
onkeypress="javascript:alert('hello');return false;">say hello</a></p>
Ne pas utiliser de scripts reposant sur les coordonnées de la souris :
onmouseover, onmousedown, onclick
Les lecteurs d’écran comme JAWS ne sont pas
capables de lire le texte mis à jour par
« document.write ».
De plus, la mise à jour des navigateurs comme Lynx n'est pas
exécutée adéquatement par
« document.write ».
=> utilisez bien les balises <noscript>...<\noscript> pour offrir l'équivalent à ceux qui n'ont pas le javascript d'activé sur leur navigateur.
Les navigateurs comme Lynx
sont incapables de lire le texte mis à jour ou
créé au moyen de « window.status »
(dans la barre d'état).
En outre, si l'état est continuellement mis à
jour, la page peut
devenir inutilisable ou difficile à parcourir pour un
utilisateur de
lecteur d’écran. Au lieu de vous servir de la
barre d'état pour
véhiculer l'information supplémentaire, veuillez
utiliser l'attribut de
titre (« title »)
et vous assurer qu’il est possible d’accorder un
sens au lien lorsque ce dernier est pris hors contexte.
S'il n'est pas possible de le faire à l'aide d'un clavier, vous devez trouver une autre solution.
Les lecteurs d’écran comme JAWS ne sont pas capables de comprendre les liens de pseudoprotocole alors que les navigateurs comme Lynx ne sont pas mis à jour correctement.
<a href="javascript:window.open('fred.html','windowname','height=100')">Fred</a>
Si des fenêtres contextuelles doivent être utilisées, l'utilisateur doit être averti qu'une nouvelle fenêtre de navigation s'ouvrira et il doit aussi être informé lorsqu'il se trouve dans une nouvelle fenêtre.
par ex Les clients aveugles trouveront très difficile de recevoir les messages d'erreur d'un formulaire si ces messages apparaissent sur une page distincte => rtour en haut de la p après lecture (sauf si ncre ?)
La fonction glisser-déposer n'est pas accessible à la plupart des personnes qui ont une déficience, à moins qu'elles aient accès à une fonction semblable pilotée par clavier.
important que cette fonction soit désactivable ou activée par le client car ces données peuvent détourner son attention de la zone du site qu'il tente de lire
JavaScript sert souvent à mettre l'information
à jour ou à la valider. Le module de traitement
d'événements « onChange »
est utilisé fréquemment dans les zones de
sélection des pages de type
calendrier. À cause de problèmes
d'accessibilité, les modules de
traitement d'événements « onChange »
et « onSelect »
ne devraient jamais être utilisés dans les zones
de sélection ou de liste déroulante.
La plupart des lecteurs d’écran sont incapables de prendre en charge les liens qui ont été créés à l'aide de JavaScript ou qui mènent à une fonction JavaScript. Les navigateurs non compatibles avec JavaScript et ceux dans lesquels JavaScript est désactivé sont incapables d'utiliser ces types de liens. Veuillez donc éviter l'utilisation de liens créés avec JavaScript ou de liens menant à une fonction JavaScript
ne doivent pas être complètement tributaires de la souris. Il est important d'utiliser des modules non tributaires des dispositifs ou de jumeler des modules de traitement d'événements pilotés par la souris à d'autres qui sont pilotés par le clavier. Les fonctions qui ont recours à ces modules de traitement d'événements ne doivent pas empêcher la navigation ni lui faire obstacle.
L'erreur la plus fréquente consiste à utiliser des boutons de validation qui font appel à des fonctions JavaScript pour valider ou soumettre des données. Les modules de traitement d'événements JavaScript ne fonctionnent pas adéquatement avec les anciens navigateurs, les vieilles technologies d'adaptation, les explorateurs de texte comme Lynx ou les navigateurs dans lesquels on a désactivé JavaScript