【发布时间】:2016-01-12 19:31:52
【问题描述】:
所以我有一个带有几个下拉菜单的导航栏。长话短说,它被硬编码到我们的网站中,我们需要找到一种无需鼠标即可触发这些下拉菜单的方法。我已经尝试过其他方法,但现在我想使用这个:
作为盲人用户通过菜单选项卡,我希望下拉菜单在获得焦点时打开。我相信我只需要正确的语法来实际触发它,但我找不到它。我正在使用这个 jquery:
$(document).ready(function () {
$("#testF").on("focus",function() {
$(this).dropdown("open");
});
});
我的问题似乎在于 .navbar-toggle("open"); (语法错误) 我只是想弄清楚当它成为焦点时这个下拉菜单将如何打开?任何帮助将不胜感激,这里有一些下拉 HTML 以防万一:
<li class="dropdown">
<a id="testF" href="#" class="dropdown-toggle" data-toggle="dropdown">Courses<span class="caret" /></a>
<ul class="dropdown-menu" role="menu">
<li>
<a href="/home/BbDeepLink" target="_blank">All Courses (click here)</a>
</li>
CSS:
/* Menu */
.navbar-default .navbar-nav > li > a{
color:#222;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
color:#222;
background-color:#fff;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
color:#fff;
background-color:#5396b1;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color:#fff;
background-color:#5396b1;
}
.dropdown-menu{
padding:0px;
}
}
@media (min-width: 781px) {
ul.nav li.dropdown:hover > ul.dropdown-menu {
display: block;
}
/* Fixes: The main menu hover/focus dropdown issue */
.navbar-default .navbar-nav .open ul {
display:none;
}
.navbar-default .navbar-nav .open:hover ul {
display:block;
}
}
【问题讨论】:
-
同时发布与您的下拉菜单关联的 CSS
-
只使用
.navbar-toggle()(无参数)。 -
仍然没有运气,我已经编辑了问题以包含 CSS
-
注意:下拉菜单会在鼠标悬停时打开,只是在键盘上按标签时没有反应
标签: javascript jquery twitter-bootstrap drop-down-menu