• 基于原生js和flex布局开发侧边栏


     css:

     1 body{
     2     padding: 0 10%;
     3 }
     4 ul,li{
     5     margin: 0;
     6     padding: 0;
     7     list-style: none;
     8 }
     9 .flex-box{
    10     display: flex;
    11     border: 1px solid;
    12 }
    13 .flex-left{
    14      200px;
    15     text-align: center;
    16     background: peru;
    17 }
    18 .flex-right{
    19     flex-grow: 1;
    20 }
    21 .flex-left li{
    22     height: 60px;
    23     line-height: 60px;
    24     font-size: 18px;
    25     border-bottom: 1px solid;
    26 }
    27 .flex-left li:last-child{
    28     border-bottom: none;
    29 }
    30 .active{
    31     background: #8b8bde;
    32 }
    33 .hide{
    34     display: none;
    35 }

    html:

     1 <div class="flex-box">
     2     <div class="flex-left">
     3         <ul>
     4             <li class="li-node active">标题一</li>
     5             <li class="li-node">标题二</li>
     6             <li class="li-node">标题三</li>
     7             <li class="li-node">标题四</li>
     8         </ul>
     9     </div>
    10     <div class="flex-right">
    11         <div class="div-node">页面1</div>
    12         <div class="div-node hide">页面2</div>
    13         <div class="div-node hide">页面3</div>
    14         <div class="div-node hide">页面4</div>
    15     </div>
    16 </div>

    js:

     1 <script>
     2     window.onload = function() {
     3         var liArr = document.getElementsByClassName('li-node');
     4         var divArr = document.getElementsByClassName('div-node');
     5         console.log(liArr);
     6         console.log(divArr);
     7         for(var i=0;i<liArr.length;i++){
     8         (function(i) {
     9             liArr[i].onclick = function(){
    10                 changeClass();
    11                 liArr[i].className = "li-node active";
    12                 divArr[i].className = "div-node";
    13             }
    14         })(i)
    15         }
    16         var changeClass = function(){
    17         for(var i=0;i<liArr.length;i++){
    18             (function(i) {
    19                 liArr[i].className = "li-node";
    20                 divArr[i].className = "div-node hide";
    21             })(i)
    22         }
    23         }
    24     }
    25 </script>

      

  • 相关阅读:
    输出流OutputStream简单理解
    IO流实现写入规定的acci码值
    事务的ACID属性&&五种状态
    java基础总结之Hashtable
    HBase
    oracle交换分区
    ArrayList 和 LinkedList 的区别(底层数据结构): 什么时候使用arrayList,什么时候使用LinkedList (一个小时)
    Mac中MariaDB数据库的安装步骤
    Mac OS X中MacPorts安装和使用(linux 的 yum)
    SFTP秘钥认证
  • 原文地址:https://www.cnblogs.com/bushan/p/12198218.html
Copyright © 2020-2023  润新知