我們正在使用包含排序功能的自定義角度表。JAWS未讀取更新的詠歎調標籤
當用戶對column1進行排序時,我們將第1列的aria-label
設置爲: 「單擊以按升序對column1排序」。
如果用戶再次點擊相同的標題,我們將更改相同的詠歎調標籤爲「點擊以降序對column1進行排序」。
但觀察到更新的aria-label
未被JAWS解說員檢測到。
我們如何解決這個問題,JAWS可以閱讀更新的aria-label
或者有沒有其他的選擇?
謝謝
我們正在使用包含排序功能的自定義角度表。JAWS未讀取更新的詠歎調標籤
當用戶對column1進行排序時,我們將第1列的aria-label
設置爲: 「單擊以按升序對column1排序」。
如果用戶再次點擊相同的標題,我們將更改相同的詠歎調標籤爲「點擊以降序對column1進行排序」。
但觀察到更新的aria-label
未被JAWS解說員檢測到。
我們如何解決這個問題,JAWS可以閱讀更新的aria-label
或者有沒有其他的選擇?
謝謝
替代文本已被計算,但您可以定義兩個按鈕/ div並隱藏不必要的。
<th>
<div role="button"
class="ascending"
aria-label="Click to sort column in ascending order"></div>
<div role="button"
class="descending hidden"
aria-label="Click to sort column in ascending order"></div>
</th>
感謝您的答覆,但我做到了以不同的方式,
1.我已經添加下面的代碼到HTML中有角色=「日誌」詠歎調活「=」禮貌」
<div class="hidden" id="sortAnnouncer" role="log" aria-live"="polite">
<span ng-bind="sortingChangedMessage"></span>
</div>
2.當在列標題用戶點擊進行排序,調用函數的角度和更新sortingChangedMessage由JAWS檢測可變
<th ng-click="setSortMessage('column name',direction)">Column name</th>
$scope.setSortMessage = function(columnName, direction)
{
$scope.sortingChangedMessage = "Click on column " + columnName + " to sort in " + direction + " order"; }
該消息改變並開始閱讀更新的sortingChangedMessage。
此方法解決了我的問題。
只需添加role =「alert」。 它會解決你的問題。 「警報」角色用於檢測動態更改。