ARIA: aria-haspopup 属性
aria-haspopup 属性用于指示在设置了该属性的元素上可以触发的交互式弹出元素的可用性和类型。
描述
在 ARIA 中,当触发显示在其他内容之上的交互式菜单、列表框、树、网格和对话框时,它们被视为“弹出窗口”。这些弹出窗口由页面上的一个或多个交互式元素触发。交互式元素将触发的弹出窗口的可用性和类型应使用 aria-haspopup 状态进行标识。
存在 aria-haspopup 属性,并带有六个枚举值之一:menu、listbox、tree、grid、dialog 或 true,表示该元素可以触发弹出窗口以及将显示哪种类型的弹出窗口。反过来,弹出窗口的元素必须具有指示的角色。值 true 等同于 menu。任何其他值,包括空字符串或其他 角色,都将被视为设置了 false。
在此上下文中,tooltip 不被视为弹出窗口,因为它不具有交互性。
aria-haspopup 状态通知辅助技术用户存在一个弹出窗口及其类型,但不提供任何交互性。为了使弹出窗口可以通过键盘访问,请确保带有 aria-haspopup 的元素是可聚焦的并且能够触发弹出窗口,存在用于打开弹出窗口的键盘机制,并且弹出窗口元素管理其所有后代的焦点。
注意: ARIA 不实现可访问的功能。ARIA 仅传达您功能的预期行为。
创建 menubar 时,父级 menuitem 应设置 aria-haspopup="menu"(或 true)。任何打开菜单的按钮都应具有 button 角色,或者最好是 <button> 元素,并且还应设置 aria-haspopup="menu"(或 true)。带有弹出菜单的 Tab 元素也应设置 aria-haspopup="menu"。请注意,不应使用 menubar 来创建网站导航。
注意: 具有 combobox 角色的元素具有隐式的 aria-haspopup 值为 listbox。
值
相关接口
Element.ariaHasPopup-
Element接口的ariaHasPopup属性反映了aria-haspopup属性的值,该属性指示了由元素触发的交互式弹出元素(例如菜单或对话框)的可用性和类型。 ElementInternals.ariaHasPopup-
ariaHasPopup属性是ElementInternals接口的一部分,它反映了aria-haspopup属性的值。
相关角色
用于角色
继承到角色
规范
| 规范 |
|---|
| 无障碍富互联网应用程序 (WAI-ARIA) # aria-haspopup |