【发布时间】:2015-07-01 10:44:29
【问题描述】:
我创建了一个菜单,如果用户单击其中一个侧边菜单项,则侧边菜单和侧边菜单子项都会显示,但我遇到的问题是我的所有菜单项都是粗体而不是选定的孩子和它的父母。
希望我解释清楚,
我的 HTML
<div id="second-menu" class="collapse navbar-collapse menu_two">
<ul class="nav navbar-nav inside-nav">
<li class="sub_menu">
<a href="#">Section 1</a>
<ul class="sidenav_wrapper">
<li class="sidenav_item sidenavlast">
<a href="#">Section 2</a>
</li>
</ul>
</li>
<li class="sub_menu">
<a href="#">Section 3</a>
<ul class="sidenav_wrapper">
<li class="sidenav_item">
<a href="#">Section 4</a>
</li>
<li class="sidenav_active">
<a href="#">Section 5</a>
</li>
<li class="sidenav_item">
<a href="#">Section 6</a>
</li>
<li class="sidenav_item sidenavlast">
<a href="#">Section 7</a>
</li>
</ul>
</li>
<li class="sub_menu">
<a href="#">Section 8</a>
<ul class="sidenav_wrapper">
<li class="sidenav_item">
<a href="#">Section 9</a>
</li>
<li class="sidenav_item">
<a href="#">Section 10</a>
</li>
<li class="sidenav_item sidenavlast">
<a href="#">Section 11</a>
</li>
</ul>
</li>
</ul>
</div>
我的 JS
$('ul.navbar-nav li').hover(
function () {
$(this).find('.sidenav_wrapper:first').css('display', 'block');
},
function () {
$(this).find('.sidenav_wrapper:first').css('display', 'none');
});
$(".sidenav_active").parent().css({
"display": "block"
});
if ($('.sidenav_active').length > 0) {
$('.sidenav_wrapper').parent().find('a').css({
"font-weight": "700"
});
}
我的 CSS
.menu_two {
border-left: 16px solid #dfdfdf;
padding-left: 0;
}
.sidenav_wrapper {
background: none repeat scroll 0 0 #e7ecf5;
border-left: 6px solid #8fb8e6;
display: none;
padding: 0;
}
.active_sub_menu a{
font-weight: 700;
}
.active_sub_menu .sidenav_wrapper{
display: block;
}
.sidenav_active a{
font-weight: 700;
}
我的 jsfiddle:JSFIDDLE
【问题讨论】:
-
会不会是你申请的
font-weight? -
您希望
font-weight:700做什么?相当于bold -
那是因为您将
"font-weight": "700"添加到if(..)中的每个链接 -
我不知道为什么这个带有简短代码示例和 jsfiddle 链接的问题值得这么多反对。看起来像一个有明确答案的明确问题。来自我的 +1。
-
请不要给负票-9之类的,评论它的原因。 OP可以删除问题。这是我知道的简单问题。