当我专注于th中包含的div时,如何让JAWS忽略行头?

时间:2016-08-30 17:26:24

标签: html accessibility jaws-screen-reader

我有一个类似于此的HTML结构,表示表的行标题单元格:

foreach($task_array as $val) {
    $chap[] = $val['task_chapter_name'];
    $task[] = $val['task_name'];
}

div /按钮的目的是启用动态添加新行标题,因此它位于底部,将现有行标题分开。

在VoiceOver中,只有在分组到div时才会宣布分配给div的本地化文本。但是,在JAWS中,它会读取th的内容作为div的rowheader,即使div包含在其中。我搜索了一些属性的文档,这些属性允许div忽略行标题,但是空出来了。我很感激您提供的任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

在添加scope="row"(从that is all that role does开始)之前,您是否尝试使用role="rowheader"tabindex="0"th的内容是什么(除非用户滚动,否则隐藏的内容除外,thus using the tabindex to allow a keyboard user to see it)?

为什么div充当按钮(role="button"),然后从真实buttonrole="presentation" tabindex="-1")中删除语义(和制表位) ?没有看到新的或降级按钮的任何文本,更不用说在th中很难看到你期望发生的事情。

如果您有一个可以测试它的URL,那么我将调整我的答案,但是现在您有很多奇怪的角色重新映射和制表符停止,我怀疑这个问题令人困惑。

遗憾的是,我无法将所有这些都放在评论中,因此答案不会回答你的问题,而是试图让它达到我可以回答的程度。