跳到masterpages中的内容设置焦点在容器上

时间:2015-06-25 09:02:39

标签: javascript html w3c

我目前正在网站上工作,试图让键盘用户更容易使用它。我已经在主页面中实现了跳转到主要内容patern,并且遇到了一些可用性问题。

这是我使用的链接:

<a class="skip-main" href="#main">Skip to main content</a>

这是主页中的#main容器,它只是一个包含内容的容器。

<div id="main" tabindex="-1"> <!-- Actual content --> </div>

当我点击主要内容的链接时,焦点设置在容器上,但这对键盘用户没有意义。需要另一个选项卡才能转到实际的页面内容。

我知道我可以通过将#main标记移动到内容来解决此问题,但这不是本网站的一个选项,需要在母版页内完成。

所以基本上我的问题是,是否有人知道如何直接跳过#main容器到内容。非常感谢!

1 个答案:

答案 0 :(得分:0)

tabindex设置为negative integer-1,它变为programmatically focusable,但isn’t included in the tab order。换句话说,使用tab键导航内容的人无法访问它,但可以通过脚本来关注它。

一个例子是将焦点移动到表单返回的错误摘要。摘要通常位于表单的开头,因此屏幕阅读器/放大镜用户you want to draw the attentionposition all keyboard-only users at the start of the form,以便他们可以开始纠正任何错误。您不希望错误摘要本身包含在页面的Tab键顺序中。

来源:http://www.paciellogroup.com/blog/2014/08/using-the-tabindex-attribute/

因此,您可能只需要使用tabindex的正值来解决问题。