6

JAWS 表格导航短键和自定义实现的导航键(即箭头键)之间的冲突

我正在尝试使 HTML 表格可以使用键盘访问,也可以使用 JAWS 屏幕阅读器进行阅读。

为了使其可访问键盘,我正在做以下事情: - 在表格单元格上为箭头键(左、右、上、下)添加了按键事件

为了使其 JAWS 可读,我正在做以下事情: - 向表格添加标题、摘要 - 向表格标题添加 scope=col - 添加 ARIA 角色,如应用程序、行、网格、网格单元

当页面在不使用 JAWS 的情况下运行时,键盘导航工作正常。如果使用 JAWS 快捷方式,JAWS 还可以很好地阅读该表。

当它与 JAWS 自定义实现的键盘导航一起运行时,它无法正常工作。要使用自定义实现的键盘导航(即箭头键)将焦点移动到不同的单元格,我使用了 INSERT + 3 键,后跟一个箭头键。这会将焦点移动到不同的单元格,但不会改变 JAWS 当前的单元格焦点。因此,当 JAWS 读取时,它将读取实际焦点单元格以外的单元格。

示例页面网址:http ://test.cita.illinois.edu/aria/grid/grid1.php 以上页面支持自定义键盘导航(即方向键)。尝试使用 JAWS 阅读以上页面。

请帮助使其键盘可在 JAWS 可读的同时访问。

感谢你的帮助!


非常感谢您的快速回复!你提供的信息非常好。

但是,我对此还有一些疑问。如果您能提供帮助,那就太好了。

  1. JAWS 提供对各种游标的支持,例如 Virtual PC Cursor、PC Cursor、JAWS Cursor。据我所知,当我们指定角色 =“应用程序”时,JAWS 在 PC 光标上运行,并且网站中提供的任何功能都可以使用提供的击键来使用。我特别想通过 HTML Table 实现的功能是,用户应该能够使用箭头键进行导航,并且 JAWS 应该阅读当前关注的内容。所以这里的疑问是为什么 JAWS 不会在 PC 光标中读出当前聚焦的内容。(在 html 表中,它可以是当前聚焦的单元格)。

  2. 如果您能解释一下 JAWS 用户如何使用 JAWS 理想地使用网站(特别是在 HTML 表中呈现的信息),那将会很有帮助。

  3. 我有一个具有以下功能的复杂表,并希望它可以通过键盘访问并由 JAWS 读取:

    • 带有展开/折叠图标的表格。单击展开/折叠图标或按键盘上的 +/-,用户应该可以看到嵌套表。
    • 表格的每一行都有一些操作项,按下一个键或单击它应该执行一个操作。(就像每一行显示独特的产品信息,用户可以通过按某个键或单击按钮来购买(操作项)。)
  4. 我尝试使用 dojo 网格,它提供使用键盘箭头键进行导航,并且有一个 JAWS 快捷方式来读取当前聚焦的单元格,即 INSERT + UP Arrow。

4

2 回答 2

4

尝试将 role="application" 添加到表格或周围元素。

于 2015-03-09T22:27:07.877 回答
3

我不知道怎么做你想做的事。我是 Jaws 用户,这张桌子很好。如果您的自定义导航键覆盖 Jaws 默认设置,我不会使用您的网站。覆盖默认值的问题是它消除了逐个字符查看的能力。如果我想检查表格单元格中某个单词的拼写,我可以使用箭头键逐个字母地阅读。禁用下颚的这种能力是不可接受的。我不相信它可以做你想做的事情的原因是因为 Jaws 使用一个虚拟缓冲区,其中包含从互联网浏览器获得的信息,以更容易使用屏幕阅读器阅读的方式格式化页面。根据我的经验,浏览器和 Jaws 之间的界限在哪里是模糊的。这意味着您可能无法在 Jaws 之前捕获特定于下颌的击键。使用 insert+3 键后跟箭头键将不适用于下巴,因为该键正在传递给浏览器。这意味着浏览器中的表格焦点正在发生变化,但无法强制 Jaws 使用的页面模型发生这种变化。

于 2011-07-28T13:28:39.183 回答