• 面向对象写tab选项卡


    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
    *{
    margin: 0;
    padding: 0;
    }
    #div1 input{background-color: #ccc}
    #div1 .active{background-color: #ffff00}
    #div1 div{ 200px;height: 200px;background-color: #cccccc;display: none}
    </style>


    //js代码:

    <script>
    window.onload = function(){
    var oDiv = document.getElementById("div1");
    var tab = new Tab(oDiv);
    tab.init();
    }
    function Tab(id){
    this.aBtn=id.getElementsByTagName("input")
    this.aDiv=id.getElementsByTagName("div")
    }
    Tab.prototype.init = function(){
    var obj =this;//tab实例化对象
    for(var i=0;i<obj.aBtn.length;i++){
    obj.aBtn[i].index = i;//给li添加一个索引
    obj.aBtn[i].onclick=function(){
    obj.fnClick(this);//this当前点击的元素li
    }

    }
    }
    Tab.prototype.fnClick=function(aBtn){
    //alert(this); //li
    for (var i =0;i<this.aBtn.length;i++)
    {
    this.aBtn[i].className = "";
    this.aDiv[i].style.display = "none";
    }
    aBtn.className = "active";
    this.aDiv[aBtn.index].style.display = "block";
    };
    </script>

    </head>



    <body>
    <div id="div1">
    <input type="button" value="时尚">
    <input type="button" value="体育">
    <input type="button" value="财经">
    <div style="display: block">时尚内容</div>
    <div>体育内容</div>
    <div>财经内容</div>
    </div>

    </body>
    </html>


    效果:

  • 相关阅读:
    【转】使用TortoiseSVN搭建本地的版本控制库
    操作系统的大端小端
    从《王者荣耀》谈游戏的帧同步
    二叉搜索树的第K大节点
    Mysql千万级大表优化
    海量数据存储方案
    递归函数思维
    time_wait的快速回收和重用
    Nginx配置反向代理服务器
    MySQL-怎样使update操作sleep一段时间
  • 原文地址:https://www.cnblogs.com/mylove0/p/7459047.html
Copyright © 2020-2023  润新知