导航菜单点击后高亮显示

Posted 王永峰的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了导航菜单点击后高亮显示相关的知识,希望对你有一定的参考价值。

需求:如果所有页面引用同一个头部导航菜单,点击栏目后,页面跳转的对应页面,这时导航菜单中该栏目高亮显示。

导航栏菜单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="";
   }
 }

 

以上是关于导航菜单点击后高亮显示的主要内容,如果未能解决你的问题,请参考以下文章

织梦一二级导航菜单被点击顶级栏目高亮(加class)解决方法

js实现当前导航菜单高亮显示

js+数据库生成三级动态tree导航菜单

滑块菜单片段中的可交换选项卡

在片段中我想点击如何显示警告对话框

外贸建站之网站导航栏菜单高亮JS实现代码分享