如何在下拉菜单中为活动网页加下划线
How to underline active webpage in drop down menu?
我正在使用引导程序构建一个网页,在导航栏中,我有三个下拉菜单。我想对页面进行编程,使当前加载的页面及其相应的下拉菜单加下划线或高亮显示,以便用户知道他们在哪个页面上。
在我的html文件中,下拉菜单导航栏如下:
<ul class="dropdown-menu">
<li><a href="#'>item1</li>
<li><a href='#'>item2</li>
</ul>
在我的css文件中,activePage类定义如下:
.activePage {
text-decoration: underline;
}
在我的javascript文件中,我尝试了以下操作:
$('.dropdown-menu a').click(function(){
$('.dropdown-menu a').removeClass('activePage');
$(this).addClass('activePage');
});
但是,以上内容并没有在下拉菜单中的当前页面下划下划线。我觉得这很奇怪,因为当我做以下事情时:
<ul class="dropdown-menu">
<li><a class="activePage" href="#'>item1</li>
<li><a href='#'>item2</li>
</ul>
第一个项目成功地加了下划线。
您只是有一些打字错误。JavaScript应该使用'.dropdown-menu a'
选择器而不是'.dropdown-menu .a'
。它还缺少一个拖尾的偏执狂。
演示:http://codepen.io/anon/pen/vNzRJP
html
<ul class="dropdown-menu">
<li><a href="#">item1</li>
<li><a href="#">item2</li>
</ul>
css
/* this line is assumed from bootstrap */
a {text-decoration: none;}
.activePage {
text-decoration: underline;
}
javascript
$('.dropdown-menu a').click(function() {
$('.dropdown-menu a').removeClass('activePage');
$(this).addClass('activePage');
});
您键入的是.dropdown-menu .a
而不是.dropdown-menu a
。
不起作用
$('.dropdown-menu .a').click(function(){
$('.dropdown-menu .a').removeClass('activePage');
$(this).addClass('activePage');
}
它将工作
$('.dropdown-menu a').click(function(){
$('.dropdown-menu a').removeClass('activePage');
$(this).addClass('activePage');
}
相关文章:
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- 如何防止网页加载后自动启动功能
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 活动选项卡's源代码-获取变量s值
- 如何使用Node.js最有效地解析网页
- 在Angular 2中布线期间保持零部件处于活动状态
- 刷新后保留对网页的更改
- 在ajax成功后,cluetip不适用于首次点击活动元素
- 打开网页后立即获取网页的活动javascript函数
- 网页在等待 AJAX 响应时变为非活动状态
- 如何知道单击了哪个按钮,以便我可以在同一活动中打开网页
- 如果 10 分钟后网页上没有用户活动,如何向上滚动到向下滚动页面
- 如何在图像加载时通过预加载和显示活动指示器快速加载网页中的图像
- 邀请用户's的朋友通过网页参加facebook活动
- 滑动下划线边框以使用活动网页
- 如何在下拉菜单中为活动网页加下划线
- 如何创建一个网站/网页,执行后端服务器活动
- 如何使用chrome浏览器动作在活动选项卡中加载网页?
- 这个网页是如何更新的?萤火虫显示没有网络活动
- 正在获取网页中的活动元素或焦点元素Id