【发布时间】:2015-09-18 03:45:19
【问题描述】:
我试图在每个导航栏菜单项被选中时保持白色下划线,但是当我单击导航栏中的每个菜单项时,我会刷新整页,因为我正在将用户引导到新控制器/行动/观点。如何保留 css,以便即使在我重定向到具有新视图的新控制器后,我仍然有单击的菜单项下划线?注意 - 视图重新呈现导航栏菜单,该菜单包含在部分视图中
$(document).ready(function() {
$(".nav-pills a").click(function() {
$(".nav-pills a").removeClass("active");
$(this).addClass("active");
//$(this).css("color", "black");
});
});
.menupartial {
background-color: #16749F;
/*opacity: .9;*/
/*width: 100%;*/
margin-bottom: 20px;
}
.menupartial a {
color: lightgrey;
font-weight: bold;
}
.nav-pills > li > a {
border-radius: 0;
}
.nav-pills > li > a:hover {
border-radius: 0;
background-color: #16749F;
color: white;
}
.nav-pills > li > a:active,
.nav-pills > li > a.active {
border-bottom: 5px solid white;
}
/*div.container.body-content {
background-color: yellow;
}*/
<div class="row menupartial">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<ul class="nav nav-pills">
<li>@Html.ActionLink("User", "UserProfile", "Account")</li>
<li>@Html.ActionLink("Profiles", "Index", "Profile")</li>
<li>@Html.ActionLink("YogaSpaces", "Index", "YogaSpace")</li>
<li><a href="#">Your Schedules</a>
</li>
<li><a href="#">Your Messages</a>
</li>
<li><a href="#">Your Groups</a>
</li>
<li><a href="#">Your Friends</a>
</li>
</ul>
</div>
</div>
【问题讨论】:
-
为什么不在服务器端执行此操作,将类
"active"分配给当前页面...如果这不是一个选项,您可以尝试添加唯一id的旧技巧到body标记,然后在 CSS 中添加规则以根据 body 的 id 激活某个菜单项... -
你能给我提供任何例子吗?
-
服务器端动态高亮见这个-dbwebb.se/kod-exempel/dynamic_php_menu至于其他方法,类似于
body#home li.home { border-bottom: 5px solid white; }等等...
标签: jquery html css asp.net-mvc twitter-bootstrap