ARIA : attribut aria-haspopup
L'attribut aria-haspopup
indique la disponibilité et le type d'élément contextuel interactif pouvant être déclenché par l'élément sur lequel l'attribut est défini.
Description
En ARIA, les menus interactifs, zones de liste, arbres, grilles et boîtes de dialogue qui apparaissent au-dessus d'autres contenus lorsqu'ils sont déclenchés sont considérés comme des « éléments contextuels ». Ces éléments contextuels sont déclenchés par un ou plusieurs éléments interactifs de la page. La disponibilité et le type d'élément contextuel que l'élément interactif va déclencher doivent être identifiés avec l'état aria-haspopup
.
La présence de aria-haspopup
, avec l'une des six valeurs énumérées — menu
, listbox
, tree
, grid
, dialog
ou true
— indique que l'élément peut déclencher un élément contextuel et le type d'élément qui sera affiché. L'élément qui apparaît doit avoir le rôle indiqué. La valeur true
est équivalente à menu
. Toute autre valeur, y compris une chaîne de caractères vide ou un autre rôle, est traitée comme si false
était défini.
Un tooltip
n'est pas considéré comme un élément contextuel dans ce contexte, car il n'est pas interactif.
Note :
Assurez-vous que le rôle de l'élément servant de conteneur pour le contenu contextuel est menu
, listbox
, tree
, grid
ou dialog
et que la valeur de aria-haspopup
correspond au rôle du conteneur contextuel.
L'état aria-haspopup
informe les utilisateur·ice·s de technologies d'assistance qu'il existe un élément contextuel et de quel type il s'agit, mais ne fournit aucune interactivité. Pour que l'élément contextuel soit accessible au clavier, assurez-vous que l'élément avec aria-haspopup
peut recevoir la sélection et déclencher l'élément contextuel, qu'il existe un mécanisme clavier pour ouvrir l'élément contextuel, et que l'élément contextuel gère la sélection de tous ses descendants.
Note : ARIA n'active pas de fonctionnalité accessible. ARIA ne fait que transmettre le comportement prévu de votre fonctionnalité.
Lors de la création d'une barre de menu, un menuitem
parent doit avoir aria-haspopup="menu"
(ou true
). Tout bouton ouvrant un menu doit avoir le rôle button
ou, de préférence, être un élément HTML <button>
et également avoir aria-haspopup="menu"
(ou true
). Les éléments tab
avec des menus contextuels doivent aussi avoir aria-haspopup="menu"
. Notez que les barres de menu ne doivent pas être utilisées pour créer la navigation d'un site web.
Note :
Les éléments avec le rôle combobox
ont une valeur implicite de aria-haspopup
à listbox
.
Valeurs
false
(par défaut)-
L'élément ne possède pas d'élément contextuel.
true
-
L'élément contextuel est un menu.
-
L'élément contextuel est un menu.
listbox
-
L'élément contextuel est une zone de liste.
tree
-
L'élément contextuel est un arbre.
grid
-
L'élément contextuel est une grille.
dialog
-
L'élément contextuel est une boîte de dialogue.
Interfaces associées
Element.ariaHasPopup
-
La propriété
ariaHasPopup
, partie de l'interfaceElement
, reflète la valeur de l'attributaria-haspopup
, qui indique la disponibilité et le type d'élément contextuel interactif, tel qu'un menu ou une boîte de dialogue, pouvant être déclenché par un élément. ElementInternals.ariaHasPopup
-
La propriété
ariaHasPopup
de l'interfaceElementInternals
reflète la valeur de l'attributaria-haspopup
.
Rôles associés
Utilisé dans les rôles :
Hérité dans les rôles :
Spécifications
Specification |
---|
Accessible Rich Internet Applications (WAI-ARIA)> # aria-haspopup> |
Voir aussi
- L'attribut ARIA
aria-controls
- Le rôle ARIA
menu
- Le rôle ARIA
listbox
- Le rôle ARIA
tree
- Le rôle ARIA
grid
- Le rôle ARIA
dialog
- Exemple de barre d'outils (angl.) - Pratiques WAI ARIA du W3C