zoukankan      html  css  js  c++  java
  • js 实现tab选项卡

    选项卡实现逻辑:
          1、事件:onmouseover onmouseout
          2、鼠标移入: 移动到哪个选项卡,哪个的背景颜色变成红色
               鼠标移出: 移出哪个选项卡,哪个的背景变白色
          3、鼠标点击选项卡
            1) 设置点击的选项卡的索引
            2) 鼠标移入时,先让所有的图片隐藏,再让对应的图片显示
            3)  鼠标移出选项卡时,默认显示第一张图片
    <style type="text/css">
        ul,
        li,
        div {
          margin: 0;
          padding: 0;
        }
    
        ul {
          width: 220px;
          line-height: 40px;
          display: flex;
          border: 1px solid #ccc;
          border-bottom: 0;
          font-size: 18px;
        }
    
        ul li {
          list-style: none;
          flex: 1;
          text-align: center;
          border-right: 1px solid #ccc;
        }
    
        ul li:last-child {
          border-right: 0;
        }
    
        .box {
          position: relative;
          width: 220px;
          height: 220px;
          border: 1px solid #cecece;
          overflow: hidden;
        }
    
        img {
          position: absolute;
          left: 0;
          top: 0;
          display: none;
        }
    
        img:first-child {
          display: block;
        }
      </style>
    </head>
    
    <body>
      <ul>
        <li>体育</li>
        <li>财经</li>
        <li>新闻</li>
      </ul>
      <div class="box">
        <img src="./img/1.jpg" alt="">
        <img src="./img/2.jpg" alt="">
        <img src="./img/3.jpg" alt="">
      </div>
    
      <script type="text/javascript">
        var aLi = document.getElementsByTagName("li");
        var aImg = document.getElementsByTagName("img");
        var oUl = document.querySelector("ul");
        for (let i = 0; i < aLi.length; i++) {
          // 先设置对应的数组索引
          aLi[i].index = i;
          aLi[i].onmouseover = function () {
            for (let j = 0; j < aImg.length; j++) {
              aImg[j].style.display = "none";
            }
            this.style.backgroundColor = "pink";
            aImg[this.index].style.display = "block";
          }
          aLi[i].onmouseout = function () {
            this.style.backgroundColor = "white";
            aImg[this.index].style.display = "none";
          }
    
        }
        oUl.onmouseout = function () {
          aImg[1].style.display = "block";
        }
      </script>
  • 相关阅读:
    3D文字菜单变换
    妙味课堂作业20160113(优化版)
    pop up layer loading
    妙味课堂作业20160113
    妙味课堂20160112js实例仿新浪菜单
    js面向对象初探
    sea.js demo
    注册ASP.NET
    JDK1.6 环境配置
    JDK1.7环境配置
  • 原文地址:https://www.cnblogs.com/yunyin/p/13638198.html
Copyright © 2011-2022 走看看