Qu'est-ce qu'une accesskey ?
Une accesskey ou touche mnémonique est une lettre soulignée dans une page Web, un menu ou un dialogue qui indique à l'utilisateur un raccourci clavier rapide simulant un clic sur cet élément. Par exemple, un bouton « Appliquer » peut avoir la lettre « A » soulignée. Sous Windows et UNIX, appuyer sur les touches <kbd>ALT+A</kbd> est une façon pratique de pousser le bouton. Sous Macintosh, les accesskeys ne sont disponibles qu'en HTML et pas en XUL, et elles sont activées en utilisant la touche <kbd>CTRL+</kbd> lettre au lieu de <kbd>ALT</kbd>.
Comment une accesskey est-elle ajoutée à un contrôle de formulaire ?
Une accesskey peut être ajoutée à un contrôle ou libellé de formulaire HTML ou XUL en utilisant l'attribut accesskey
. Par exemple, voici comment on peut ajouter une accesskey à un bouton XUL :
<button label="Appliquer maintenant" accesskey="A" />
| Appliquer maintenant |
- ou - | |
<button label="Appliquer maintenant" accesskey="a" />
| Appliquer maintenant |
Dans Mozilla, nous utilisons des DTD pour rajouter une autre couche d'abstraction à des fins d'internationalisation. L'exemple ci-dessus devrait donner :
<button label="Appliquer maintenant" accesskey="&applyInstantly.accesskey" />
(Utilisez toujours accesskey
au lieu de akey
).
Si des méthodes comme confirm()
, confirmEx()
ou prompt()
sont utilisées pour créer un dialogue, utilisez un « & » devant le texte du bouton ou de la case à cocher fait du caractère qui suit une accesskey. Par exemple, &Maintenant
transforme « M » en accesskey soulignée. Pour insérer un véritable caractère esperluète, utilisez &&
.
Comment choisir une lettre d'accesskey ?
- L'attribut « accesskey » est sensible à la casse !
- Remarquez que la différence dans l'exemple des deux boutons ci-dessus est la spécification de la casse. La mise en œuvre des accesskeys de Mozilla essaiera d'abord de souligner une lettre de la même casse, mais s'il n'y en a pas il se rabattra sur la lettre de casse opposée. Nous préférons souligner la première lettre de l'un des mots, il est donc important d'être conscient ce cette particularité.
- Évitez les doublons
- N'utilisez pas deux fois la même lettre d'accesskey dans la même fenêtre.
- Soyez particulièrement attentifs aux menus déroulants dans la même fenêtre. Par exemple, dans le dialogue du Gestionnaire de marque-pages, n'utilisez pas F, E, A, T ou i (Fichier, Edition, Affichage, Tâches, Aide).
- Aide demandée : il serait utile d'avoir un outil automatisé pour vérifier l'existence de doublons d'accesskeys et les accesskeys manquantes dans les fichiers XUL.
- Rendez-les faciles à voir
- Utilisez les lettres au début du premier ou du second mot du libellé.
- Utilisez un consonne ou une voyelle distinctive dans le libellé.
- Utilisez les lettres de grande largeur, telles que w, m et les lettres majuscules.
- Évitez les lettres avec des jambages, telles que p, g, q ou y.
- Les lettres adjacentes aux lettres ayant des jambages.
- Les lettres n'ayant qu'un pixel de largeur, comme i ou l.
- Rendez-les faciles à mémoriser
- Faites en premier les menus importants pour qu'ils aient les meilleures accesskeys.
- Regardez si un menu similaire a une accesskey quelque part ailleurs dans Mozilla et utilisez la même accesskey. Il y a aussi des accesskeys standard dans Windows, comme Propriétés.
- Sinon, essayez la première lettre du premier mot du menu.
- Puis la première lettre d'un autre mot.
- Enfin, utilisez des lettres non muettes dans un mot d'action (faites cela quand vous avez choisi les accesskeys pour le reste du dialogue).
- Éléments courants n'ayant pas d'accesskeys
- Boutons OK.
- Boutons Annuler.
- Boutons Fermer.
- Libellés d'onglets.
- Boutons des barres d'outils
- Éléments d'arbres
- Éléments de listes
- En-têtes de colonnes
Y a-t-il des bogues critiques que je devrais connaître ?
- bug 143065 - La portée des accesskeys n'est pas limitée au panneau courant.
Où les accesskeys doivent-elles être ajoutées ?
Recherchez les dépendances du bug 129179 (le méta bogue de gestion des accesskeys XUL), ou recherchez les bogues avec « accesskey » ou « mnemonic » dans le résumé, ou recherchez les dialogues où il n'y a pas d'éléments avec des lettres soulignées.
Ouvrez les bogues sous le composant « Keyboard Navigation », et rendez le méta bug 129179 dépendant de ceux-ci.