ARIA: aria-activedescendant 属性
aria-activedescendant 属性用于标识当焦点位于 composite 小组件、combobox、textbox、group 或 application 上时,当前处于活动状态的元素。
描述
aria-activedescendant 属性提供了一种为辅助技术管理交互式元素中焦点的方法,当这些元素包含多个可聚焦的后代元素时,例如菜单、网格和工具栏。使用 aria-activedescendant,屏幕阅读器无需在子元素之间移动焦点,而可以在容器元素上使用该属性来引用当前处于活动状态的元素,从而在焦点发生变化时告知辅助技术用户当前活动的元素。
使用 aria-activedescendant 时,浏览器会将 DOM 焦点保留在容器元素或控制容器元素的输入元素上。然而,用户代理会将桌面焦点事件和状态传达给辅助技术,就像 aria-activedescendant 引用的元素具有焦点一样。
此属性仅在角色为 composite 小组件、combobox、textbox、group 或 application 且其 id 被引用为属性值的元素上才相关。
该属性用于向辅助技术提供有关哪个元素具有焦点的、但本身不创建焦点。焦点和属性值的管理是通过 JavaScript 完成的。除了管理该属性值之外,请确保当前活动的后代元素在获得焦点时可见或在视区内(或滚动到视区内)。
在为具有 DOM 焦点的元素设置 aria-activedescendant 值时,请确保该值引用了一个子元素——要么是具有 DOM 焦点的元素的后代,要么是通过 aria-owns 属性指定的逻辑后代。
当具有 DOM 焦点的元素是 combobox、textbox 或 searchbox 时,请包含 aria-controls 来引用支持 aria-activedescendant 的元素。
aria-activedescendant 的值引用被控制元素的子元素。例如,在一个 combobox 中,焦点可能保留在 combobox 上,而 combobox 元素上的 aria-activedescendant 值则引用由 combobox 控制的弹出列表框的后代。
注意:该属性仅在少数角色上受支持。例如,dialog 不支持 aria-activedescendant。当 combobox 打开一个 dialog 时,DOM 焦点会从 combobox 移入 dialog,因为它无法通过此属性引用。
注意:当 listbox、grid 或 tree 弹出窗口的后代获得焦点时,DOM 焦点会保留在 combobox 上,并且 combobox 具有设置为引用弹出窗口内获得焦点的元素的 aria-activedescendant 值。
值
- ID 引用
-
将其值设为当前获得焦点的元素的
id。
相关接口
Element.ariaActiveDescendantElement-
ariaActiveDescendantElement属性是每个元素接口的一部分。其值是Element子类的实例,反映了aria-activedescendant属性中的id引用(有一些注意事项)。 ElementInternals.ariaActiveDescendantElement-
ariaActiveDescendantElement属性是每个自定义元素接口的一部分。其值是Element子类的实例,反映了aria-activedescendant属性中的id引用(有一些注意事项)。
相关角色
仅在具有以下角色的元素上作为属性相关
规范
| 规范 |
|---|
| 无障碍富互联网应用程序 (WAI-ARIA) # aria-activedescendant |