AG Grid列菜单键盘操作无无障碍提示是否属ADA缺陷?
问题解答
是否属于ADA缺陷?
是,这属于ADA合规缺陷。ADA要求所有交互功能的操作方式必须能被辅助技术(如NVDA)识别并告知用户,键盘快捷键作为列菜单的核心交互入口之一,未通过无障碍属性暴露给辅助工具用户,违反了WCAG 2.1中2.1.1键盘操作(确保所有功能都可通过键盘操作)和3.3.2标签或说明(提供清晰的操作提示)的准则,而WCAG是ADA合规的核心参考标准。
问题细节与修复方案
问题根源
AG Grid中通过Ctrl+Enter打开列菜单的操作,未通过aria-label或aria-description属性向辅助技术用户提示;同时带表头复选框的列存在冗余的aria-describedby属性,导致手动添加的无障碍提示被覆盖无法读取。
分场景修复
- 无表头复选框的列:直接给列头元素添加
aria-description="按Ctrl+Enter打开列菜单",即可让NVDA读取该快捷键提示。 - 带表头复选框的列:
- 列头div上的
aria-describedby="ag-29-input"属于无效冗余属性(该属性同时存在于复选框输入框上,对列头无实际作用); - 将列头div的
aria-describedby设为空字符串(aria-describedby=""),解除对aria-label/aria-description的覆盖; - 再给列头添加
aria-description="按Ctrl+Enter打开列菜单",此时NVDA就能正常读取该快捷键提示。
- 列头div上的
内容的提问来源于stack exchange,提问作者StarDeveloper
相关产品推荐
相关产品推荐

