欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS---案例:tab切换效果

程序员文章站 2022-03-13 20:13:12
案例:tab切换效果 获取所有的li标签 第一件事:把这个a所在的所以兄弟元素的类样式全部移除 (removeAttributes) 第二件事:当前点击的a父级元素li (点击这个a所在的所在元素li),设置背景颜色 (this.parentNode.className)

案例:tab切换效果

 

获取所有的li标签

第一件事:把这个a所在的所以兄弟元素的类样式全部移除 (removeattributes)

第二件事:当前点击的a父级元素li (点击这个a所在的所在元素li),设置背景颜色 (this.parentnode.classname)

 

 

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>title</title>
  <style>
    #list li {
      list-style-type: none;
      width: 80px;
      height: 30px;
      line-height: 30px;
      background-color: beige;
      text-align: center;
      float: left;
      margin-left: 5px;
    }

    #list li.current {
      background-color: burlywood;
    }

    #list li a {
      text-decoration: none;
    }
  </style>

</head>

<body>
  <div id="menu">
    <ul id="list">
      <li class="current"><a href="http://www.baidu.com">首页</a>
      </li>
      <li><a href="javascript:void(0)">播客</a></li>
      <li><a href="javascript:void(0)">博客</a></li>
      <li><a href="javascript:void(0)">相册</a></li>
      <li><a href="javascript:void(0)">关于</a></li>
      <li><a href="javascript:void(0)">帮助</a></li>
    </ul>
  </div>
  <script src="common.js"></script>
  <script>
    //获取所有的li标签
    var liobjs = my$("list").getelementsbytagname("li");
    //循环遍历,找到每个li中的a,注册点击事件
    for (var i = 0; i < liobjs.length; i++) {
      //每个li中的a
      var aobj = getfirstelement(liobjs[i]);

      aobj.onclick = function () {
        //第一件事:把这个a所在的所以兄弟元素的类样式全部移除
        for (var j = 0; j < liobjs.length; j++) {
          liobjs[j].removeattribute("class");
        }
        //第二件事:当前点击的a父级元素li (点击这个a所在的所在元素li),设置背景颜色
        this.parentnode.classname = "current";
        return false;//阻止超链接跳转
      };
    }

  </script>

</body>

</html>