如何使导航键盘可访问?

时间:2016-06-07 16:27:16

标签: javascript jquery section508

我一直在寻找多级垂直菜单,并且可以选择使用父链接很长一段时间。最后,我找到了我在项目中使用的navgoco jQuery。我非常喜欢这个插件。我唯一的问题是它无法通过键盘访问。有没有办法来解决这个问题?

https://jsfiddle.net/webIra7/xs4mr7at/7/



.nav, .nav ul, .nav li {
    list-style: none;
}

ul.nav {width: 250px;}

.nav ul {
    padding: 0;
    margin: 0 0 0 18px;
}

.nav {
    padding: 4px;
    margin: 0px;
}

.nav > li {
    margin: 4px 0;
}

.nav > li li {
    margin: 2px 0;
}

.nav a {
    color: #333;
    display: block;
    outline: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    text-decoration: none;
}

.nav li > a > span {
    float: right;
    font-size: 19px;
    font-weight: bolder;
}

.nav li > a:hover > span {
    color: #fff;
}

.nav li > a > span:after {
    content: '\25be';
}
.nav li.open > a > span:after {
    content: '\25b4';
}

.nav a:hover, .nav li.active > a {
    background-color: #5D5D5D;
    color: #f5f5f5;
}

.nav > li.active > a  {
    background-color: #4D90FE;
}

.nav li a {
    font-size: 12px;
    line-height: 18px;
    padding: 2px 10px;
}

.nav > li > a {
    font-size: 14px;
    line-height: 20px;
    padding: 4px 10px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="nav">
    <li><a href="https://github.com/tefra/navgoco/blob/master/README.md">Item 1</a>
        <ul>
            <li><a href="#">1.1 Submenu</a></li>
            <li><a href="#">1.2 Submenu</a></li>
            <li><a href="#">1.3 Submenu</a></li>
        </ul>
    </li>
</ul>
&#13;
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

它已经是键盘可访问的,但实际上并不是用户可见的。

您应该添加一些CSS以使焦点可见。例如:

.nav a:focus {
    background-color: #ccc;
}

在您的小提琴示例中,您也可以从tabindex移除ul.nav。这可以防止焦点矩形显示在ul元素上,这是不希望的。