防止屏幕阅读器/辅助技术触发点击处理程序



我有这个链接:

<a href="/path/to/page" data-trigger="expedient-element">The Best Page</a>

当前页面中存在的 ajax 填充和显示元素是一个"增强",并且具有aria-hidden="true"。屏幕阅读器和辅助技术最好跟随链接的 href 到后续的静态页面,而不是触发单击处理程序(特别是因为它将对其执行操作的元素已经隐藏,如前所述(。

此行为是否已经发生,或者我需要添加一些内容?

在链接上按 Enter 时,它的作用与单击相同,拦截回车键以执行不同操作是一个非常糟糕的主意。

  • 有些键盘用户,视力完美,他们不使用屏幕阅读器。这些用户将遇到意外行为。
  • 屏幕阅读器可以选择直接发送单击事件,而不是键盘事件,即使实际按下了 Enter 键也是如此。所以同上相反的方向。
  • 除了单击或输入之外,可能还有其他方法可以激活链接:空格键,点击触摸屏,辅助技术人员通过眨眼单击等。在这些情况下它应该如何表现?

顺便说一句,您不能根据是否使用屏幕阅读器来做不同的事情,这仅仅是因为您没有 100% 可靠的方法来检测它。

你应该问自己的问题是:

  • 为什么您希望在单击和输入之间或屏幕阅读器和普通用户之间具有不同的行为?
  • 是尝试解决无法访问的内容,还是您有两个版本的相同内容(可访问和无法访问的版本(?在这种情况下,最好有一个内容并使其可访问。在极少数情况下,这是不可能的,经验表明,这两个版本最终会不同步,比你想象的要快。

相关内容

  • 没有找到相关文章

最新更新