零基础建站培训教程介绍

当前位置:

JS实现网站导航菜单点击当前样式高亮显示

做网站过程中,网站导航菜单里会有很多的导航栏目,在企业网站建设过程中,为了让用户知道自己所处的栏目,我们会将网站导航菜单点击后,所点击的当前样式有变化,呈现高亮显示。如下图:

网站导航菜单点击当前样式高亮显示

如何实现这种网站导航菜单点击当前样式高亮显示的效果呢?这需要使用JS特效代码才能实现。下面以一个案例的方法给学习建网站的学员们介绍一下实现方法。

HTML代码写法:


<ul id="meau_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>

JS代码写法:


<script>
//获取div下面所有的a标签(返回节点对象)
   var myNav = document.getElementById("meau_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="";
   }
 }
</script>

CSS代码写法:(控制点击后的样式)


.active{color:red;font-weight:600;}

原理介绍

通过JS来循环判断当前页面的URL与导航栏目中哪个URL地址相同,如果相同就给标签的超链接标签添加一个.active的类名,然后再通过CSS控制.active的样式。

发表评论

电子邮件地址不会被公开。 必填项已用*标注