JAWS 2018:使选择/下拉"可点击"



我正在做一个网站项目并修复可访问性缺陷。

我的设置限制:

  • 操作系统是视窗 7/10
  • 浏览器
  • 是IE浏览器11
  • 辅助功能软件是 JAWS 2018.1804.26

我无法控制这些限制,因此请不要为任何其他设置提出任何解决方案。


我有一个缺陷,说 HTML<select>(下拉列表)应该列在 JAWS 的"可点击"元素中。(这是按Ins+Ctrl+/键盘和弦时显示的模式对话框。我以前在其他HTML元素类型中遇到过此类问题,并且我已经通过以下组合解决了这些问题:

  • 添加一个onclick处理程序(在我的例子中,是一个空函数)
  • aria-label属性添加一个值(在我的情况下,动态)

尝试在当前缺陷中执行这些步骤时,我可以使<select>显示在"可单击"模式对话框中,但没有列出任何文本(我猜它正在"报告"一个空字符串)。尽管这aria-label有价值。


其他注意事项:

  • 有问题的<select>位于<td>1内的<span>

它看起来像这样:

<table>
<tbody>
<tr>
<td>
<span>
<select> ... options ... </select>
<span>
</td>
</tr>
</tbody>
</table>

我尝试像这样更改上面的代码:

<table>
<tbody>
<tr>
<td>
<span>
<select onclick="emptyHandler" aria-label="Some text"> 
... options ... </select>
<span>
</td>
</tr>
</tbody>
</table>
function emptyHandler() {
/* This function is empty by design     */
/* Its function is to expose an element */
/* as a clickable element to JAWS, when */
/* otherwise JAWS would ignore it.      */
}

进行上述修改确实会将元素添加到可单击元素列表中,但不显示任何文本。您可以看到额外的行,并且可以突出显示它,但它只是一些空格/文本(或者可能只是什么都没有)。

1我没有为此页面编写 UI,我不希望(也无权)重写整个页面。我怀疑在与 JAWS 交互时将控件包装在元素中会做一些非常不稳定的事情,但我无法解决这个问题的部分。


我对此有几个问题,因为我找不到关于它应该如何工作的出色文档:

  1. 是否有任何关于这应该如何工作的详细文档?我在Freedom Scientific的网站以及Mozilla和网络上的搜索产生了一些信息,但我希望有一个中心的地方可以找到这些答案。特别是,对于"可点击"元素是什么,似乎没有一个一致的规范定义。某些元素似乎被视为"可单击"是默认值,而添加自定义onclick处理程序似乎允许将任何元素添加到该列表中。这导致我...
  2. "可点击"模式对话框在 JAWS 中究竟是如何工作的?我想我已经想出了如何将元素放入此列表,但它显示的内容似乎有点不一致。这导致我...
  3. 该模式对话框中应该显示什么?在之前的测试中,显示的文本似乎是aria-label属性中的值,那么为什么在这里不起作用呢?
  4. <select>元素会出现在这里是不恰当的期望吗?出于这个原因,我总是可以把这个缺陷踢回来,但我不想这样做,除非我确定这是正确的行动方案。

随着细节的添加,我现在明白了这个问题。 JAWS 中的"可单击"对话框 (ins+ctrl+/) 显示具有onClick()处理程序的元素,但用于该对话框中<select>元素的标签是选择的值,即当前选择的任何<option>。 使用aria-labelaria-labelledby<label for="select-id">不会影响可单击的对话框,尽管在<button>上使用这些属性确实可以在该对话框中使用。

我建议为 JAWS 提交一个错误。

好消息是,用于导航到下一个<select>元素的 JAWS 快捷键是C,用于显示所有<select>元素的对话框是ins+ctrl+C,并且该对话框确实遵循aria-labelaria-labelledby'<label for="select-id">

这不是一个错误。对于 JAWS 用户来说,<select>绝不是可点击的元素。此击键带来了可单击但无法识别为其他内容的元素列表:链接、按钮、组合框。
因此,将缺陷标记为"非错误",并告诉用户改用Insert+Ctrl+C
像JAWS这样的屏幕阅读器总是试图尽可能精细地识别HTML元素,所以"一个可点击的东西"实际上对盲人用户没有多大帮助。与组合框不同。

相关内容

  • 没有找到相关文章

最新更新