欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript實現(xiàn)多層顏色選項卡嵌套

 更新時間:2020年09月21日 17:12:39   作者:八弟吖  
這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)多層顏色選項卡嵌套,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了JavaScript實現(xiàn)多層顏色選項卡嵌套的具體代碼,供大家參考,具體內(nèi)容如下

這是學JavaScript時候的一個作業(yè),如果沒有思路還是挺有難度的,但是思路正確的話一步一步來就很簡單做出來了。

實現(xiàn)效果

HTML部分代碼

 <div class="box" id="box">
 <ul id="leftBox">
  <li class="active">a</li>
  <li>b</li>
  <li>c</li>
  <li>d</li>
 </ul>
 <div id="rightBox">
  <div id="rightBox1" class="active">
  <a href="#" >a1</a>
  <ul class="tabUl">
   <li class="hover">a1</li>
   <li>a2</li>
   <li>a3</li>
   <li>a4</li>
  </ul>
  </div>
  <div id="rightBox2">
  <a href="#" >b1</a>
  <ul class="tabUl">
   <li class="hover">b1</li>
   <li>b2</li>
   <li>b3</li>
   <li>b4</li>
  </ul>
  </div>
  <div id="rightBox3">
  <a href="#" >c1</a>
  <ul class="tabUl">
   <li class="hover">c1</li>
   <li>c2</li>
   <li>c3</li>
   <li>c4</li>
   <li>c5</li>
   <li>c6</li>
  </ul>
  </div>
  <div id="rightBox4">
  <a href="#" >d1</a>
  <ul class="tabUl">
   <li class="hover">d1</li>
   <li>d2</li>
   <li>d3</li>
   <li>d4</li>
  </ul>
  </div>
 </div>
</div>

css部分代碼

<style>
 * {
  margin: 0px;
  padding: 0px;
  list-style: none;
  text-decoration: none;
 }

 .box {
  width: 800px;
  border: 1px solid #000000;
  margin: 20px auto;
  background: blue;
 }

 .box:after {
  content: "";
  display: block;
  clear: both;
 }

 #leftBox {
  float: left
 }

 #rightBox {
  float: left;
 }

 #leftBox li {
  width: 200px;
  height: 89px;
  background: red;
  margin-bottom: 2px;
  color: #fff;
  font: 50px/89px "黑體";
  text-align: center;
 }

 #rightBox div {
  display: none;
 }

 #rightBox .active {
  display: block;
 }

 #rightBox a {
  display: block;
  width: 600px;
  height: 325px;
  background: #0F0;
  font-size: 100px;
  color: #000;
  text-align: center;
  text-decoration: none;
  line-height: 360px;
 }

 .tabUl {
  display: table;
  width: 100%;
 }

 .tabUl li {
  display: table-cell;
  background: #909;
  color: #fff;
  font-size: 20px;
  text-align: center;
  height: 40px;
  line-height: 40px;
  border-right: 2px solid #03C;
  cursor: pointer;
 }

 .tabUl li.hover {
  background: #fff;
  color: #000;
 }

 #leftBox .active {
  background: yellow;
  color: #000;
 }
</style>

JavaScript實現(xiàn)代碼

思路:鼠標移入左邊的每個li后,都會改變他的顏色,所以只需要改變class名,同時右邊也會顯示對于的div,有對應(yīng)的話一般都會用到自定義索引值和this…

<script>
 /* 
 點擊左邊的li后,所點擊li加上class名,其它清除所有,然后右邊對應(yīng)索引值的div也加上class=active,所以要用到this

  */

 //獲取元素
 var lUl = document.getElementById('leftBox')
 var rUl = document.getElementById('rightBox')
 var lLi = lUl.getElementsByTagName('li')
 var oDiv = rUl.getElementsByTagName('div')

 //改變左邊樣式
 for (var i = 0; i < lLi.length; i++) {
  //自定義索引
  lLi[i].index = i
  lLi[i].onmouseenter = function () {
  //清空所有classname
  for (var j = 0; j < lLi.length; j++) {
   lLi[j].className = ''
   oDiv[j].className = ''
  }
  //給相應(yīng)的li添加上classname
  this.className = 'active'
  oDiv[this.index].className = 'active'
  }
 }


 //右邊
 for (var k = 0; k < oDiv.length; k++) {
  fn(oDiv[k])
 }
 function fn(parent) {
  //獲取用到的元素
  var rLi = parent.getElementsByTagName('li')
  var oa = parent.getElementsByTagName('a')[0]
  for (var i = 0; i < rLi.length; i++) {
   rLi[i].onmouseenter = function(){
   for (j = 0; j < lLi.length; j++) {
    rLi[j].className = ''
   }
   this.className = 'hover'
   //把li標簽中的文字傳到a標簽中
   oa.innerHTML = this.innerHTML
   }
  
  }
  
 }
</script>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 微信小程序 云開發(fā)模糊查詢實現(xiàn)解析

    微信小程序 云開發(fā)模糊查詢實現(xiàn)解析

    這篇文章主要介紹了微信小程序 云開發(fā)模糊查詢實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • javascript實現(xiàn)前端分頁功能

    javascript實現(xiàn)前端分頁功能

    這篇文章主要為大家詳細介紹了javascript實現(xiàn)前端分頁功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能示例

    微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能示例

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能,結(jié)合實例形式分析了action-sheet組件及事件響應(yīng)簡單使用技巧,需要的朋友可以參考下
    2018-12-12
  • layui關(guān)閉層級、簡單監(jiān)聽的實例

    layui關(guān)閉層級、簡單監(jiān)聽的實例

    今天小編就為大家分享一篇layui關(guān)閉層級、簡單監(jiān)聽的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JavaScript中reduce()的用法實例

    JavaScript中reduce()的用法實例

    reduce()方法接收一個函數(shù)作為累加器(accumulator),數(shù)組中的每個值(從左到右)開始縮減,最終為一個值,下面這篇文章主要給大家介紹了關(guān)于JavaScript中reduce()的用法實例,需要的朋友可以參考下
    2022-05-05
  • 淺談JavaScript對象與繼承

    淺談JavaScript對象與繼承

    下面小編就為大家?guī)硪黄獪\談JavaScript對象與繼承。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • 拖拉表格的JS函數(shù)

    拖拉表格的JS函數(shù)

    拉表格,一個函數(shù)調(diào)用即可
    2008-11-11
  • web開發(fā)跨域原因的多種解決方案

    web開發(fā)跨域原因的多種解決方案

    我們在web項目開發(fā)中,經(jīng)常會遇到各種跨域的問題,本文帶你解決web開發(fā)中多種跨域原因的解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • 在?TypeScript?中使用泛型的方法

    在?TypeScript?中使用泛型的方法

    這篇文章主要介紹了在TypeScript中使用泛型的方法,泛型是靜態(tài)類型語言的基本特征,允許將類型作為參數(shù)傳遞給另一個類型、函數(shù)、或者其他結(jié)構(gòu)
    2022-06-06
  • html代碼調(diào)試腳本

    html代碼調(diào)試腳本

    html代碼調(diào)試腳本...
    2006-07-07

最新評論