【发布时间】:2017-01-04 21:02:12
【问题描述】:
我在一个 div 中有一组按钮,其中有一些 javascript 在它们之间移动焦点以响应箭头键事件。
当我使用 NVDA/Firefox/Windows 进行测试时,似乎 NVDA 会覆盖我的箭头键处理程序并根据自己的规则移动焦点。这是一个问题,因为我的小部件是高度可定制的、动态的和响应式的 - 所以移动焦点的规则非常复杂。
Voiceover 和 ChromeVox 都没有这种行为。
我注意到向每个按钮添加 role="gridcell" 似乎可以解决此问题,但我不想这样做,因为这意味着屏幕阅读器不会将我的按钮视为按钮。除非绝对必要,否则我也真的不想更改 html 结构(例如,将每个按钮包装在另一个元素中)。
有没有办法(例如 aria 或专有属性)告诉 NVDA 不要将自己的箭头键行为应用于按钮?
【问题讨论】:
标签: javascript accessibility screen-readers nvda