web-dev-qa-db-fra.com

Où mettre le focus après la suppression d'un élément dans une liste

C'est une question d'accessibilité:

Les utilisateurs de Screen Reader peuvent interagir avec une liste d'éléments, quelque chose comme ça:

  • élément1 supprimer l'élément1
  • élément2 supprimer l'élément2
  • ...... ......................

Où le focus doit-il se déplacer une fois qu'un utilisateur a supprimé un élément. Le problème principal est que le focus ne peut pas rester où il était (perdant ainsi le contexte) car la ligne sera supprimée

Veuillez indiquer où vous mettriez l'accent? Pensez également que nous pouvons ajouter d'autres éléments tels que des en-têtes ou le bouton "Ajouter" pour recevoir le focus

1
Leths

Les personnes utilisant des lecteurs d'écran n'ont pas la myriade d'indices de contexte à la disposition des personnes favorisées par la vue. La perturbation du contexte doit donc être réduite au minimum.

Suivant le principe de la moindre surprise, je laisserais l'espace ouvert avec "[supprimé]" jusqu'à ce que le curseur se déplace hors de la liste, point auquel l'écart peut être fermé.

Je vérifierais également cela auprès des utilisateurs réels pour m'assurer que cela ne viole pas une convention ad hoc que je ne connais pas.

4
MMacD

Il me semble qu'il y a trois options:

  • Focus sur le même endroit dans la liste, mais sur le nouvel élément qui a maintenant "glissé" dans l'endroit après la suppression. Vraisemblablement, la liste "s'effondre" et tous les éléments après celui qui a été supprimé sont remontés d'un endroit plus près du haut de la liste. Si vous laissez le même emplacement de mise au point, le nouvel élément qui occupe cette position dans la liste sera mis au point

  • Déplacer le focus sur l'élément avant l'élément supprimé. Au lieu de laisser le focus sur la position dans la liste, replacez le focus sur l'élément AVANT l'élément supprimé.

  • Perdez le focus sur la liste et déclarez le focus sur un élément de page de niveau supérieur.

Je crois que si vous utilisez un modèle de base de données plus standard ou un modèle de liste et de pointeur, si vous avez un pointeur pointant sur une position sur une pile et que vous supprimez un élément de la pile, le pointeur reste pointé sur la même position , qui sera désormais rempli par un élément différent (option 1 ci-dessus). Je ne sais pas si c'est le meilleur modèle à utiliser pour une liste visuelle, mais il présente un précédent qui pourrait correspondre à la compréhension de certains utilisateurs.

Je ne connais pas très bien les lecteurs d'écran (honte à moi), mais où la page se concentre-t-elle lorsque l'utilisateur atterrit pour la première fois sur la page? Serait-il sensé d'aller avec la troisième option ci-dessus et de replacer l'utilisateur hors du contexte de la liste? Ou cela implique-t-il beaucoup plus de travail pour qu'ils réintègrent la liste?

0
Mattynabib

Dans la liste des valeurs, il y aura une valeur par défaut comme (sélectionnez ou '-' ou ''). Chaque fois que l'utilisateur supprime la valeur focalisée, déplacez le focus sur la valeur par défaut de la liste. J'espère que ceci résoudra votre problème.

0
Grafix Guru