JeuWeb - Crée ton jeu par navigateur
[Javascript & accessibilité] Événement click, quelle solution utiliser ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Javascript & accessibilité] Événement click, quelle solution utiliser ? (/showthread.php?tid=2724)

Pages : 1 2 3 4


RE: event "clic" quelle solution utilisée ? - Sephi-Chan - 09-07-2008

C'était long, parfois intéressant, mais tu ne citais parfois trop des fragment de message, ce qui faisait perdre leur sens aux citations, dommage.

Ce que je disais à propos de certains lecteurs était donc fondé : on est bien embêté puisqu'ils acceptent Javascript mais le supportent mal.

Je pense que le mieux, pour un site accessible, est de demander à l'utilisateur (lors de l'inscription, et via son profil une fois inscrit) s'il utilise ou non un navigateur graphique. Si oui, on charge le site normalement. Sinon, on ne charge aucun fichier Javascript (ou bien on demande à l'utilisateur de ne pas activer Javascript pour ce site). Cette solution permet de ne pas trop se casser la tête. Le confort d'utilisation sera un peu amoindri mais l'utilisateur aura au moins accès à tout.


Sephi-Chan


RE: event "clic" quelle solution utilisée ? - QuentinC - 09-07-2008

Citation :Et cela me donne maintenant très envie de tester jaws par moi-même, au moins pour ne pas mourrir idiot, et peut-être pour améliorer ce qui peut l'être
encore.
Fais seulement, http://www.freedomscientific.com/
La version de démo a les mêmes fonctions que la version payante sauf que tu es obligé de rebooter toutes les 40 minutes (ce qui dissuade assez vite de l'utiliser en permanence).

Citation :Ce que je disais à propos de certains lecteurs était donc fondé : on est bien embêté puisqu'ils acceptent Javascript mais le supportent mal.
Tu as peut-être mal compris, ou c'est peut-être moi : les fonctions javascript sont celles du navigateur natif, tu n'as aucune restriction particulière, le support est total et transparent. Maintenant il faut être logique, on ne peut pas déclencher des évènements souris sans souris par exemple. IL faut noter que jaws s'est bien amélioré en ce qui concerne le support d'AJAX, ce n'est toujours pas le top mais pour vous dire, j'arrive plus ou moins à utiliser facebook (qui est justement bourré d'AJAX partout) quand ce n'est pas IE6 lui-même qui bugge.

Citation :Je pense que le mieux, pour un site accessible, est de demander à l'utilisateur (lors de l'inscription, et via son profil une fois inscrit) s'il utilise
ou non un navigateur graphique. Si oui, on charge le site normalement. Sinon, on ne charge aucun fichier Javascript (ou bien on demande à l'utilisateur
de ne pas activer Javascript pour ce site). Cette solution permet de ne pas trop se casser la tête. Le confort d'utilisation sera un peu amoindri mais
l'utilisateur aura au moins accès à tout.
L'idéal étant toujours de faire la même version pour tout le monde. Maintenant si effectivement tu persistes à vouloir faire deux versions différentes de certains modules, si tu n'as vraiment pas d'autre choix, à ce moment-là demander à l'inscription et/ou proposer des options dans le profil paraît être raisonnable. Notez toutefois que certains utilisateurs utilisent ces outils sans vraiment savoir ce qu'ils utilisent, ce n'est donc pas forcément toujours évident pour un tel utilisateur de faire les bons choix.
En revanche j'écarterais la deuxième qui consiste à demander expressément à l'utilisateur de désactiver javascript pour la totalité du site. De un très peu savent où trouver cette option même si on explique pas à pas où aller, et de deux désactiver seulement pour un site n'est pas toujours possible (quelqu'un me dit comment faire avec IE6 pour désactiver des sites au coup par coup ?) et après avoir désactivé pour tous les sites, l'utilisateur va se demander pourquoi certaines choses ne fonctionnent pas sur d'autres sites. Restons simples, et considérons toujours que l'utilisateur n'en connaît qu'un minimum d'un point de vue technique. Ce qu'il veut c'est pouvoir jouer convenablement, le reste il s'en fout.


RE: event "clic" quelle solution utilisée ? - Sephi-Chan - 10-07-2008

Tu as bien dis que Jaws merdait quand il avait affaire à une boîte alert, prompt et confirm, non ? :o

Ensuite, concernant la version pour tout le monde, c'est impossible si l'on veut profiter des avantages de Javascript. Il faut proposer des alternatives.

Si par exemple sur mon site, en cliquant sur le lien Connexion, au lieu de charger la page indiquée dans le href j'amène une jolie boîte de dialogue (fait maison) qui demande les identifiants, connecte le joueur (dans le cas où les identifiants sont bons) puis recharge la page entière via Ajax (juste pour ne pas faire clignoter le site Wink), le script fonctionnera différemment selon que l'on active ou non Javascript.

Toutefois si l'on fait un script plus complexe où l'on souhaite que les utilisateurs valides puissent utiliser des contrôles qui seraient difficilement accessibles à des non-voyants (des sliders, des drag'n'drop, etc.), alors ça peut vite devenir compliqué puisque le non-voyant qui a activé Javascript se retrouvera face à une page qu'il aura beaucoup de mal à utiliser. Dans ce cas là, avoir directement 2 version de la page — l'une exploitant HTML et l'autre apportant le confort de Javascript — est bien plus pratique.


Sephi-Chan


RE: event "clic" quelle solution utilisée ? - Anthor - 10-07-2008

Pour moi la meilleure solution est la balise A avec l'événement onclick.

C'est la meilleure sémantique pour que chaque navigateur ( pour voyant ou non ) sache qu'il s'agit d'une action.

De façon générale, mon jeu est toujours codé sans aucun Javascript, puis je passe par une deuxième phase de modification du DOM.

C'est plus long, mais c'est la bonne méthode. Le Javascript n'est pas un langage pour l'affichage des pages, mais bel et bien pour optimiser l'expérience utilisateur en apportant un certain dynamisme.


RE: event "clic" quelle solution utilisée ? - Sephi-Chan - 10-07-2008

Et comment fais-tu dans le cas où ta surcouche Javascript transforme une page en interface plus riche, qui utilise des sliders, des drag'n'drop ? L'utilisateur non-voyant sera bien gêné puisqu'il aura Javascript mais aura bien du mal à utiliser ces contrôles.


Sephi-Chan


RE: event "clic" quelle solution utilisée ? - Anthor - 10-07-2008

Les sliders sont facilement remplaçables par deux liens qui augmente, ou réduise la valeur. De même pour le drag&drop.

De toute façon, tu n'auras jamais du 100% accessible.


RE: event "clic" quelle solution utilisée ? - Sephi-Chan - 10-07-2008

Oui, c'est remplaçable, je suis d'accord. Mais le fait de transformer les contrôle universels (formulaires et liens) du site en quelque chose de plus ergonomique peut te rendre inaccessible puisque les mal-voyants ont aussi Javascript.

Je pense que le 100% accessible est… accessible (:p), mais ça demande un boulot monstre puisqu'il faut vraiment penser à tout.


Sephi-Chan


RE: event "clic" quelle solution utilisée ? - Anthor - 10-07-2008

Tout dépend si l'on transforme tout bêtement, dès que javascript est activé ^^.
On peux aisément vérifier maintenant qu'un navigateur est compatible avec nos scripts.

Et oui c'est un boulot monstre Smile


RE: event "clic" quelle solution utilisée ? - Sephi-Chan - 10-07-2008

La compatibilité n'est pas le problème ici, c'est plutôt qu'on ne sait pas que l'utilisateur souffre d'un quelconque handicap vu que le lecteur d'écran agit en surcouche. C'est bien le problème.


Sephi-Chan


RE: event "clic" quelle solution utilisée ? - QuentinC - 10-07-2008

L'accessibilité c'est aussi rester simple. Le composant slider en tant que tel n'existe pas en HTML (bientôt avec HTML 5 avec input type="range" peut-être). Pas disponible = on utilise en surcouche. Là par exemple, en natif tu devrais proposer un input text permettant d'entrer la valeur directement, tu ajoutes en surcouche un bitonio graphique qui fait slider avec un javascript externe si tu veux, mais tu laisses l'input text. Ensuite pour faire mieux, tu fais comme Kéké, tu mets une option dans le profil « je suis déficient visuel ».

Je serais curieux de tester l'accessibilité par une revue d'écran de ton jeu, séphichane. Envoie-moi l'URL par MP si tu es d'accord de t'y prêter, tu n'es pas obligé bien sûr. Je viendrais faire un tour et ensuite je supprimerais mon compte, je ferais mes remarques par MP ou un autre moyen si tu préfères.
Par exemple chez Kéké il y a 2-3 trucs qui ne vont pas mais dans l'emsemble c'est assez bon, en comparaison à des gros titres industriels comme ogame