溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

js實現(xiàn)二級菜單點擊顯示當(dāng)前內(nèi)容效果

發(fā)布時間:2020-09-15 19:06:59 來源:腳本之家 閱讀:139 作者:cdx1170776994 欄目:web開發(fā)

最近做了一個二級菜單點擊事件的效果,一級菜單有3個,二級菜單是固定的,而且html布局并不是父子級關(guān)系,具體請看效果圖如下

js實現(xiàn)二級菜單點擊顯示當(dāng)前內(nèi)容效果

html結(jié)構(gòu)入下

<div>
  <ul>
    <li>您好!日期</li>
    <li class="li_list checked grounder">滾球</li>
    <li class="li_list">今日賽事</li>
    <li class="li_list">早盤</li>
    <li><img src="../img/live_tv_m.gif" ></li>
    <li>更改密碼</li>
    <li>密碼恢復(fù)</li>
  </ul>
  <ul id="allBall">
    <li>賬戶歷史</li>
    <li>|</li>
    <li>交易狀況</li>
    <li class="ball foot">足球</li>
    <li>|</li>
    <li class="ball basketball">籃球/美式足球</li>
    <li>|</li>
    <li class="ball tentis">網(wǎng)球</li>
    <li>|</li>
    <li class="ball ">排球</li>
    <li>|</li>
    <li class="ball badminton">羽毛球</li>
    <li>|</li>
    <li class="ball ping-pong">乒乓球</li>
    <li>|</li>
    <li class="ball base">棒球</li>
    <li>|</li>
    <li class="ball table">斯諾克/臺球</li>
    <li>|</li>
    <li class="ball other">其他</li>
  </ul>
</div>
<div id="container_main">
    <div id="roll" class="A_list">
      <div >
        <iframe src="../roll_ball_index.html" frameborder="0"  border="0" marginwidth="0" marginheight="0" scrolling="no" allowtransparency="yes"></iframe>
      </div>
      <div></div> //div內(nèi)寫你所需要展現(xiàn)的內(nèi)容
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
    <div id="today" class="A_list">
      <div ></div>
      <div></div>
      <div> </div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
    <div id="earlier" class="A_list">
      <div ></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
  </div>

css樣式我這里就不一一羅列了,根據(jù)你自己頁面需求自己設(shè)計

下面是重要內(nèi)容js

function allGame() {
  var lis = document.querySelectorAll('.li_list'); //獲取三大玩法按鈕
  var A_list = document.getElementsByClassName('A_list');//獲取三大賽事
  var ball = document.getElementsByClassName("ball"); //獲取球類賽事
  for(var i=0;i<lis.length;i++){ //首先邊框一級菜單
    lis[i].index = i; //獲取三大玩法的下標(biāo)
    lis[i].onclick = function () { //一級菜單的點擊事件
      for( var i=0;i<lis.length;i++){  
        lis[i].className = '';
        A_list[i].style.display="none";
      }
      this.className='checked';
      A_list[this.index].style.display="block"; //for循環(huán)利用排他思想顯示當(dāng)前點擊的選項 
      var x = this.index; //重點:第一次點擊的時候獲取到的下標(biāo)保存一個變量x
      var a_list = document.getElementsByClassName('A_list')[x]; //利用下標(biāo)獲取A_list[x]
      var aa_list = a_list.getElementsByTagName("div");//根據(jù)上一步獲取相應(yīng) 的子級div
      for(var j=0;j<ball.length;j++){ //進(jìn)行二級菜單遍歷
        ball[j].indexa = j;
        ball[j].onclick = function () { //同樣的遍歷 同樣的排他思想
          for(var a=0;a<aa_list.length;a++){
            aa_list[a].style.display = "none"; //所有的div都隱藏
          }
          aa_list[this.indexa].style.display="block"; // 當(dāng)前的顯示
        }
      }
    }
  }
}
allGame();

這是一個簡單的案例,小生入行不久,有什么不妥的地方歡迎大家指教。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI