zoukankan      html  css  js  c++  java
  • 原生js实现选项卡功能

    代码如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
    *{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    }
    .box{
    400px;
    height: 300px;
    border: 2px solid;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    }
    .header{
    height: 50px;

    }
    .header span{
    height: 50px;
    float: left;
    display: block;
    25%;
    border: 2px solid;
    text-align: center;
    font: 24px/50px "宋体";
    }
    .content{
    100%;
    height: 250px;

    }
    .content div{
    100%;
    height: 100%;
    background: pink;
    display: none;
    }
    .active{
    background: green;
    }
    .show{
    display: block!important;
    }
    </style>
    </head>
    <body>


    <div class="box">
    <div class="header">
    <span class="active">首页</span>
    <span>购物车</span>
    <span>推荐</span>
    <span>我的</span>

    </div>


    <div class="content">
    <div class="show">我是首页呵呵</div>
    <div>我是购物车呵呵</div>
    <div>我是推荐呵呵</div>
    <div>我是我的呵呵</div>
    </div>
    </div>


    <script>
    var spans = document.querySelectorAll(".header span")
    var divs = document.querySelectorAll(".content div")
    // 第二个版本
    for(var i = 0; i < spans.length; i++){
    spans[i].setAttribute("data-id",i)
    spans[i].onclick = function () {
    for (var j = 0; j < spans.length;j++){
    spans[j].classList.remove("active")
    divs[j].classList.remove("show")
    }
    this.classList.add("active")


    var index = this.getAttribute("data-id")
    console.log(index)

    divs[index].classList.add("show")

    }
    }


    //第一版
    // for (var i = 0; i < spans.length; i++){
    // click(i)
    // }
    //
    //
    // function click(i) {
    // spans[i].onclick = function () {
    // for (var j = 0; j < spans.length; j++){
    // spans[j].classList.remove("active")
    // divs[j].classList.remove("show")
    // }
    // this.classList.add("active")
    // divs[i].classList.add("show")
    // }
    // }

    </script>

    </body>
    </html>

  • 相关阅读:
    PAT1066(AVL树)
    判断是对象,还是数组对象
    electron打包成.exe后限制只启动一个应用
    electron启动出现短暂的白屏
    js sort方法根据数组中对象的某一个属性值进行排序
    VUE DIV模拟input框的基本处理
    vue 设置 input 为不可以编辑
    VUE实现限制输入框最多输入15个中文,或者30个英文
    electron 点击事件无效
    electron监听系统托盘,electron是否最小化到系统托盘
  • 原文地址:https://www.cnblogs.com/daifuchao/p/11761106.html
Copyright © 2011-2022 走看看