需求:如果所有页面引用同一个头部导航菜单,点击栏目后,页面跳转的对应页面,这时导航菜单中该栏目高亮显示。
导航栏菜单html结构:
HTML:
<ul id="tabs_nav">
<li><a href="a.html" class="active"></a></li>
<li><a href="b.html"></a></li>
<li><a href="c.html"></a></li>
<li><a href="d.html"></a></li>
</ul>
实现:判断a标签中href属性与当前窗口URL是否匹配,匹配则给其添加样式。
js代码:
//获取div下面所有的a标签(返回节点对象)
var myNav = document.getElementById("tabs_nav").getElementsByTagName("a");
//获取当前窗口的url
var myURL = document.location.href;
//循环div下面所有的链接,
for(var i=1;i<myNav.length;i++){
//获取每一个a标签的herf属性
var links = myNav[i].getAttribute("href");
var myURL = document.location.href;
//查看div下的链接是否包含当前窗口,如果存在,则给其添加样式
if(myURL.indexOf(links) != -1){
myNav[i].className="active";
myNav[0].className="";
}
}