Web 可访问性:冗余 link- 相邻的 link 去同一个 URL 标签 <a href="javascript:void(0)">

Web Accessibility: Redundant link- Adjacent links go to the same URL for a tag <a href="javascript:void(0)">

代码:

<a href="javascript:void(0)" role="button" title="Start a Process link" style="">Start a Process link</a>

我正在使用 wave 工具来实现 Web 可访问性。 Wave 工具给出错误:冗余 link- 相邻的 link 转到相同的 URL。 参考:WCAG 2.4.4 Link Purpose (In Context) (Level A)

我理解由于 href="javascript:void(0)" 它给出了错误 - 相邻的 link 转到相同的 URL。 但是我必须 运行 jquery 函数(在重定向之前检查验证和设置值)点击标签。

有什么建议吗?

错误指出有另一个 link 元素(具有有效 href 属性的锚点 <a> 或另一个具有 role="link" 的元素)具有相同的目标.在您的情况下,很可能因为目标 (href) 是 javascript:void(0) 并且可能不止一个 link 这样的。所以 Wave 认为那些 link 是相同的,因此标记 WCAG 2.0 Success Criterion 2.4.4 Link Purpose (In Context).

解决方案

  1. 理想情况下,使用 <button>(如上面评论中所述)- 它会自然地处理所有事件
  2. 如果不可能:
    • 更改目标(可以替换为href="#"
    • 删除 role="button" - 否则它将覆盖所有 link 行为。
    • 删除 title 和内部文本中的单词“link”过多 - 角色将从标记中传达给屏幕 reader 用户,无需添加标签。

例子

<a href="#" title="Start a Process" style="">Start a Process</a>

或者

<button style="">Start a Process</a>