• 侧栏选项卡 闭包处理 原生js处理兄弟元素


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            *{
                padding: 0;
                margin: 0;
            }
            .main{
                overflow: hidden;
                zoom: 1;
                border: 1px solid blue;
            }
            .menuLeft,.content{
                float: left;
            }
            .menuLeft{
                 100px;
                border: 1px solid black;
                height: 200px;
            }
            .menuLeft ul li {
                list-style-type: none;
                height: 33.3%;
                cursor: pointer;
    
            }
            .content{
                 400px;
                border: 1px solid black;
                height: 200px;
            }
            .content div:first-child{
                display: block;
            }
            .content div{
                display: none;
            }
            .active{
                background-color: red;
                color: white;
            }
        </style>
    </head>
    <body>
    <div class="main">
        <div class="menuLeft">
            <ul>
                <li class="active">缪成龙</li>
                <li>朱计划</li>
                <li>欧阳欣</li>
                <li>张宁宁</li>
            </ul>
        </div>
        <div class="content">
            <div>
                <p>甘肃省</p>
            </div>
            <div>
                <p>安徽省</p>
            </div>
            <div>
                <p>江西省</p>
            </div>
            <div>
                <p>山东省</p>
            </div>
    
        </div>
    </div>
    <script type="text/javascript">
        /*
        * 侧栏选项卡
        * 注意:在选择默认样式时,不要用伪类,否则不好改变
        * ,在html样式中添加样式,或者在css中用style添加
        *要用classList代替className
        * classList有四种方法:  记住
        * add(value)
        * contains(value)
        * remove(value)
        * toggle(value)
        *
        *
        *
        *
        *
        * */
        window.onload=function(){
            var list=document.querySelectorAll("li");
            var Odiv=document.querySelector(".content").querySelectorAll("div");
            for(var i=0;i<list.length;i++){
                (function (i) {
                    /*
                    * 闭包处理
                    * 这样没回返回的就是每个的i了
                    *
                    * */
                    list[i].onclick=function(){
                        list[i].classList.add("active");
                        Odiv[i].style.display="block";
                        for(var j=0;j<list.length;j++){
                            if(j!==i){
                            /*原生js这样处理兄弟元素
                            */
                                Odiv[j].style.display="none";
                                list[j].classList.remove("active");
                            }
                        }
    
                    }
                })(i)
            }
        }
    
    </script>
    </body>
    </html>
    

      效果如下图:

  • 相关阅读:
    尤瓦尔•赫拉利简史三部曲读书笔记
    5星|《城市与国家财富》:经济发展的基本单位是城市而不是国家
    oracle SQL Develop导出数据库中的表格数据到excel
    selvert的过滤器filter处理中文乱码
    jsp中四种传递参数的方法
    Mybatis中配置Mapper的方法
    JAVA文件中获取路径及WEB应用程序获取路径方法
    MyEclipse 常用设置
    Java连接oracle数据库的OCI和thin
    Java连接oracle数据库的OCI和THIN
  • 原文地址:https://www.cnblogs.com/qianduangaoshou/p/6605348.html
Copyright © 2020-2023  润新知