html - JAWS 屏幕阅读器忽略 SPAN 标签

标签 html accessibility jaws-screen-reader

因此,我能够让我的页面与 NDVA 屏幕阅读器一起正常工作,但是,在 JAWS 中测试时,它跳转到跨度,但不阅读文本。

<span tabindex="0" title="whatever">whatever</span>

更新:

  • 我想要实现的是我有一些元素可以展开/折叠我正在构建的网站的某些部分。然而,这些功能元素不是链接。

  • 回复@discojoe(感谢回复)

  • 添加 TABINDEX="0"属性会将 SPAN/DIV 元素按自然顺序插入到标签列表中(而默认情况下,它们通常不会添加到标签列表中)。这允许屏幕阅读器切换到该元素,并且工作正常。具体来说,我的问题是 JAWS 只会跳转到那个元素,它不会读取它。
  • 我同意,使用 TABINDEX="n" (其中 n > 0)是一件坏事,它会扰乱制表符列表的自然顺序,我不会那样做。
  • 另外,您可以使用 TABINDEX="-1"从选项卡列表中删除默认放置的元素(例如 A 或 INPUT 标签)。
  • 我已经尝试过使用标签,但是,当用户点击此链接上的 Enter(以触发 onclick 事件)时,它会对页面执行某些操作(不是完全重新加载,而是有点重新初始化),从而延迟与那个元素。我发现这对普通用户和残障用户来说都是糟糕的体验。
  • 在 IE 中使用 A 标签中的 # 标签将哈希标签添加到页面标题。
  • 此外,使用 A 标签会使屏幕阅读器在每个元素之前/之后读出“LINK”,并且由于它们实际上并不是链接,我认为这会对可访问性产生负面影响。

最佳答案

我首先想知道您为什么使用 span 元素而不是标准的 href 元素?你想要达到什么目的?如果您可以提供更多上下文\代码,它可能会有所帮助。

我刚试过,遇到了同样的问题;虽然我可以通过箭头浏览文档并读出一个跨度,但我不能然后点击它并读出它。

使用类似的东西

<a href="#" onclick="javascript: return false;">Whatever</a> 

工作正常。

使用 tabindex 属性还有其他问题,特别是对于键盘用户。在使用 tabindex 属性的页面上,tab 焦点顺序将首先遍历所有指定了 tabindex 的元素,然后按照源代码顺序遍历所有没有指定 tabindex 的元素。

一个好的通用规则是要么对所有键盘可访问元素使用 tabindex,要么不对任何元素使用 tabindex,以解决此问题。

我意识到在这种情况下,您可能使用 tabindex 只是为这一项提供键盘可访问性,因此如果您使用提到的 a href 方法,这个问题可能无关紧要,但我想提及它是为了完整性

关于html - JAWS 屏幕阅读器忽略 SPAN 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4777177/

相关文章:

javascript - 显示可拖动 div 悬停的标签内容

javascript - 始终保持相同的行高?

javascript - 用鼠标在网页上模拟震颤(例如帕金森病)?

javascript - 使用 JavaScript,您如何跟踪网站访问者是否使用屏幕阅读器?

javascript - JAWS 不读取动态内容。 IE11

php - html2pdf - TCPDF : word wrap in table cell using zero width space (replaced by '?' in PDF)

javascript - jQuery - 动画滚动到部分页面

html - “wairole” 和 “role” 属性有什么区别?

accessibility - 给定元素中屏幕阅读器的替代文本

javascript - 如何停止 508 Jaws aria 警报队列