用户只需使用键盘即可使用 CTRL 和 ENTER 键打开列菜单。
我遇到的问题是用户没有收到如何仅使用键盘打开列菜单的通知。如果用户使用 NVDA 等辅助功能应用程序,则不会有
aria-label
或 aria-description
通知用户如何使用键盘打开它。这是 ADA 缺陷吗?
请注意,我自己添加了一个
aria-description
,这解决了没有标题复选框的列标题的问题。如果列标题有标题复选框,则 aria-describedby
会阻止读取 aria-description
和 aria-label
。
列标题 div 上的
aria-describedby: ag-29-input
似乎没有执行任何操作,并且也在复选框的输入上。将 aria-describedby
设置为列标题上的空字符串可修复 aria-describedby: ag-29-input
阻止在 NVDA 上读取 aria-description 和 aria-label 的问题。
视力正常的用户如何知道按 Ctrl+Enter?有给他们任何指示吗?
我在 https://codesandbox.io/examples/package/ag-grid-react 上查找了一些 ag-grid 示例(因为我不熟悉它),然后我运行了“AG Grid React with Key” -价值数据”演示。表中的列的
aria-description
为 “按 CTRL ENTER 键打开列菜单。”
<div class="ag-header-cell ag-focus-managed" role="columnheader" tabindex="-1" aria-colindex="3" col-id="mealTime" aria-description="Press CTRL ENTER to open column menu.">
因此,屏幕阅读器用户实际上比视力正常的用户有优势,因为他们会听到键盘快捷键说明。视力正常的用户不会收到任何有关键盘快捷键的说明。
我不确定创建该演示的人是否添加了
aria-description
或者它是否内置于 ag-grid 中。
注意,
aria-description
尚未正式发布。它仍然在 AIRA 1.3“Editor's Draft”规范中。 ARIA 1.1 是当前的官方规范,ARIA 1.2 处于“候选推荐”阶段。所以我很惊讶 aria-description
示例可以与 NVDA 配合使用。
无论如何,视力正常的键盘用户和弱视或盲人屏幕阅读器用户都都应该被告知有关键盘快捷键的信息。如果用户无法导航到列标题并打开菜单,无论是通过快捷键还是其他按键,那么是的,这将是 ADA 问题。它会失败 WCAG 2.1.1 键盘。
当聚焦 AG Grid 中的列标题单元格时,屏幕阅读器(NVDA、JAWS)会向最终用户宣布键盘快捷键,以便在列菜单可用时向最终用户打开列菜单(这是仅限 AG Grid Enterprise 的功能)。
我不知道为什么你们这边没有公告,因为这已经正确公告了很长一段时间了。请在 AG Grid github 页面上提交问题,并附上有关我们如何重现此行为的说明,我们将进行调查。
对于视力正常的用户的键盘快捷键列表 - 此处列出了可在 AG Grid 中使用的键盘快捷键: https://www.ag-grid.com/javascript-data-grid/keyboard-navigation/#normal-column-headers
请查看此键盘快捷键列表,并在向最终用户发送的有关如何更有效地使用您的应用程序的消息中包含相关快捷键。