小程序開發公司,挑戰百日學習計劃第34天(tad分欄製作)

南寧小程序開發公司:www.zkelm.com

儘管每天都學一點,但是感覺進步還是有點慢。慢吞吞的有點像烏龜,咋搞咋搞,要達到目標值,好像時間挺不夠用。
窮是原罪,菜是原罪. 好吧 先學起來在說了,反正只要進步 就是好事!

今天要做得就是Tad分欄。一個很使用的小組件功能, 純JS操作,確實也是必備能力之一!前端的常用組件。
小程序開發公司:www.zkelm.com

1.要先有一定的css 佈局基礎 ,小組件需要的東西,其實是一種綜合性的,如果沒有對css 和js理解的話 看起來估計有點小難度,
廢話不多說,我們先做一個box 放入幾個li

<div class="box">
  <ul>
     <li><a href="">小程序開發</a></li>
     <li><a href="">企業oa開發</a></li>
     <li><a href="">網站開發</a></li>
     <li><a href="">公衆號開發</a></li>
  </ul>
  <div class="items">
     <div class="item">這裏是小程序開發:www.zkelm.com</div>
     <div class="item">這裏是企業oa開發:www.zkelm.com</div>
     <div class="item">這裏是網站開發:www.zkelm.com</div>
     <div class="item">這裏是公衆號開發:www.zkelm.com</div>
  </div>
</div>

顯示的效果如下:
廣西小程序開發:www.zkelm.com
接下來我們美化一下!

ul{
				list-style-type: none;
				display: flex;
				background-color: #ccc;
				margin: 0;
				padding: 0;
			}
			ul li a{
				text-decoration:none;
				display: block;
				width:60px;
				height: 30px;
				background-color: #888;
				line-height: 30px;
				text-align:center;
				color:#eee;
				border: none;
				
			}
			ul li{
				margin:1px;	
				border: none;
			}
			.items{
				border:1px solid #ccc;
				height: 100px;
				border-top:None;
				background-color: #EEEEEE;
				padding: 5px;
			}
			
			.item{
				display: none;
			}
			.enter{
				background-color: #EEEEEE;
				color:#000000;
			}
			.myshow{
				display: block;
			}

顯示效果如下
南寧軟件開發:www.zkelm.com

思路:1.先寫 ul li 裏面的 點擊事件

      //獲取全部A元素,他的效果是alist[0]=a(首頁) alist[1]=a(其它)
  var  alist=document.querySelector("ul").querySelectAll("a");   
     //獲取底部的 div (內容)。並存儲在數組中一一對應 divlist[0]=div1  divlist[1]=div2
  var divlis=document.querySelector(".items").querySelectorAll("item");
     //給每個A添加onclick事件
     
      for(var i=0;i<alist.length;i++){
          alist[i].onclick=function(){
            //首先,點擊的時候就把for所有的元素a標籤都換成統一風格
             for(var m=0;m<alist.length;m++){
                  //排他性
                  alist[m].className=""
              }
              //排除其他的風格後 ,只標註自己
              alist[i].className="enter"
           }
       }
      
   

運行的代碼就是這樣子的

小程序開發公司:www.zkelm.com

2.第二步: 點擊的時候讓底下的div 依次顯示他的內容,其餘的全部隱藏 所以js的代碼改成!

<script type="text/javascript">
  
      var  alist=document.querySelector("ul").querySelectorAll("a");
      var  itemlist=document.querySelector(".items").querySelectorAll(".item");
  
       for(var i=0;i<alist.length;i++){
   
                 alist[i].onclick=function(){
                     for(var m=0;m<alist.length;m++){
						 
                         alist[m].className="";
                         itemlist[m].className="item";      
                        }   
                 this.className="enter"; 
                 var idex=this.getAttribute("index");
                   //itemlist[idex].className="myshow";  
                }
                alist[i].setAttribute("index",i);
        }
 </script>

這裏做重點的講解: alist[i].setAttribute(“index”,i)
會在 a標籤之中加入屬性 index、 然後 點擊的時候 讀取他的屬性 index的值, 用來做 items 裏面的item定位顯示
小程序開發公司:www.zkelm.com
如圖 divlist[0]=小程序開發:www.zkelm.com
divlist[1]=企業oa開發:www.zkelm.com
divlist[1]=網站建設:www.zkelm.com
divlist[1]=公衆號開發:www.zkelm.com

完整的代碼如下:

<!DOCTYPE html>
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Tab分欄製作</title>
  <style>
   ul{
    list-style-type: none;
    display: flex;
    background-color: #ccc;
    margin: 0;
    padding: 0;
   }
   ul li a{
    text-decoration:none;
    display: block;
    width:100px;
    height: 30px;
    background-color: #888;
    line-height: 30px;
    text-align:center;
    color:#eee;
    border: none;
    
   }
   ul li{
    margin:1px; 
    border: none;
   }
   .items{
    border:1px solid #ccc;
    height: 100px;
    border-top:None;
    background-color: #EEEEEE;
    padding: 5px;
   }
   
   .item{
    display: none;
   }
   .enter{
    background-color: #EEEEEE;
    color:#000000;
   }
   .myshow{
    display: block;
   }
  </style>
 </head>
 <body>
  <div id="box">
   <ul>
    <li><a href="#">小程序開發</a></li>
    <li><a href="#">企業oa開發</a></li>
    <li><a href="#">網站開發</a></li>
    <li><a href="#">公衆號開發</a></li>
   </ul>
   <div class="items">
    <div class="item">這裏是小程序開發:www.zkelm.com</div>
    <div class="item">這裏是企業oa開發:www.zkelm.com</div>
    <div class="item">這裏是網站開發:www.zkelm.com</div>
    <div class="item">這裏是公衆號開發:www.zkelm.com</div>
   </div>
  </div>
  
 </body>
 <script type="text/javascript">
  
  
      var  alist=document.querySelector("ul").querySelectorAll("a");
      var  itemlist=document.querySelector(".items").querySelectorAll(".item");
  
       for(var i=0;i<alist.length;i++){
   
                 alist[i].onclick=function(){
                     for(var m=0;m<alist.length;m++){
						 
                         alist[m].className="";
                         itemlist[m].className="item";      
                        }   
                 this.className="enter"; 
                 var idex=this.getAttribute("index");
                   //itemlist[idex].className="myshow";  
                }
                alist[i].setAttribute("index",i);
        }
 </script>
</html>

每天進步1% 爭取不墮落。廣西小程序開發:www.zkelm.com

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章