web-dev-qa-db-fra.com

Définir un raccourci pour changer le focus sur une autre section dans une application web?

Disons que vous avez une application web avec 3 sections. Un menu de navigation gauche, une barre d'outils/section de paramètres et une zone d'application principale. La plupart du temps, l'utilisateur interagira directement avec l'application et le focus de son document se trouvera potentiellement quelque part profondément à l'intérieur de la "hiérarchie" de l'application, ce qui signifie que le tabulation dans/hors de l'application pour placer le focus sur la navigation ou la barre d'outils de gauche sera une douleur.

Ajouter un raccourci (et rendre les touches du raccourci visibles à côté de cette section peut-être?) Pour changer le focus sur le menu de navigation de gauche ou la barre d'outils est une bonne idée en général? Sinon, ils devront peut-être faire beaucoup de tabulations ou utiliser une autre méthode d'interaction avec cette partie du site, ce que nous aimerions éviter. Points bonus si quelqu'un sait comment cela s'aligne avec les exigences WCAG a11y.

EDIT, mise à jour avec wireframes:

rough application wireframes

Disons que nous avons une application avec une navigation à gauche, une barre d'outils et une application (la partie "charnue" de l'application). L'application se concentre d'abord sur la section d'application, intitulée "QUELQUES APPLICATIONS" dans les wireframes, et comporte de nombreuses sections imbriquées qui peuvent rendre difficile la sortie de l'utilisation du focus. Est-il approprié de permettre à l'utilisateur de déplacer le focus, disons, sur le premier lien ou bouton pertinent dans chacune des sections à l'aide d'un raccourci? (J'ai utilisé quelques exemples artificiels de raccourcis pour l'image, mais vous pouvez en imaginer certains qui pourraient être plus appropriés peut-être)

1
z0d14c

La navigation au clavier est une bonne chose dans les bonnes circonstances, et souvent elle est `` invisible '' pour quiconque ne veut pas l'utiliser, il n'y a donc pas d'inconvénient à l'ajouter.

Les "bonnes circonstances" peuvent inclure tout ou partie:

  • Utilisateurs expérimentés et réguliers : Les utilisateurs occasionnels d'une application ne se souviendront généralement pas des raccourcis clavier (ni même considèrent que la navigation au clavier est une possibilité). La navigation au clavier est généralement destinée aux utilisateurs expérimentés à long terme.
  • Périphériques avec claviers : Évidemment, les raccourcis clavier ne sont bons que si vous avez un clavier. Si la fonction fournie par la touche est critique et/ou que vous avez beaucoup d'utilisateurs sur les téléphones/tablettes, vous voudrez peut-être envisager de la résoudre d'une manière différente ou de fournir un chemin alternatif pour les appareils tactiles (gestes, contrôles supplémentaires, etc. )
  • Compatible avec le système d'exploitation : Il va sans dire que vous ne devriez pas gêner les raccourcis clavier standard sur le système d'exploitation ou le navigateur de l'utilisateur. Celles-ci varient - gardez cela à l'esprit lors de la production de contenu d'aide, par exemple.

En ce qui concerne les directives d'accessibilité, voir Critère de réussite 2.1.4: raccourcis clavier de caractères . Plus précisément, cela concerne les raccourcis qui sont des touches à un seul caractère, donc si vous utilisez [ctrl]+ ou [cmd+] raccourcis, ça devrait aller. Je voudrais implémenter des raccourcis en tant qu'éléments de lien de déclenchement qui pointent vers l'élément sur lequel vous souhaitez définir le focus (plutôt que simplement la clé définissant le focus directement) - cela est probablement compatible avec la plupart des technologies d'assistance, car elles peuvent toutes traiter des liens simples et ancres. Cela correspond parfaitement à votre idée d'afficher le raccourci comme invite à l'utilisateur.

1
Beejamin