ARIA: aria-activedescendant 屬性

aria-activedescendant 屬性用於標識當焦點位於 composite 小元件、comboboxtextboxgroupapplication 上時,當前處於活動狀態的元素。

描述

aria-activedescendant 屬性提供了一種為輔助技術管理互動式元素中焦點的方法,當這些元素包含多個可聚焦的後代元素時,例如選單、網格和工具欄。使用 aria-activedescendant,螢幕閱讀器無需在子元素之間移動焦點,而可以在容器元素上使用該屬性來引用當前處於活動狀態的元素,從而在焦點發生變化時告知輔助技術使用者當前活動的元素。

使用 aria-activedescendant 時,瀏覽器會將 DOM 焦點保留在容器元素或控制容器元素的輸入元素上。然而,使用者代理會將桌面焦點事件和狀態傳達給輔助技術,就像 aria-activedescendant 引用的元素具有焦點一樣。

此屬性僅在角色為 composite 小元件、comboboxtextboxgroupapplication 且其 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,因為它無法透過此屬性引用。

注意:listboxgridtree 彈出視窗的後代獲得焦點時,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