js实现二级菜单点击显示当前内容效果


Posted in Javascript onApril 28, 2018

最近做了一个二级菜单点击事件的效果,一级菜单有3个,二级菜单是固定的,而且html布局并不是父子级关系,具体请看效果图如下

js实现二级菜单点击显示当前内容效果

html结构入下

<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" alt=""></li>
    <li>更改密码</li>
    <li>密码恢复</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">网球</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 style="display: block">
        <iframe src="../roll_ball_index.html" frameborder="0" style="width: 1500px;height: 1000px;" border="0" marginwidth="0" marginheight="0" scrolling="no" allowtransparency="yes"></iframe>
      </div>
      <div></div> //div内写你所需要展现的内容
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
    <div id="today" class="A_list">
      <div style="display: block"></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 style="display: block"></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样式我这里就不一一罗列了,根据你自己页面需求自己设计

下面是重要内容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; //获取三大玩法的下标
    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循环利用排他思想显示当前点击的选项 
      var x = this.index; //重点:第一次点击的时候获取到的下标保存一个变量x
      var a_list = document.getElementsByClassName('A_list')[x]; //利用下标获取A_list[x]
      var aa_list = a_list.getElementsByTagName("div");//根据上一步获取相应 的子级div
      for(var j=0;j<ball.length;j++){ //进行二级菜单遍历
        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"; // 当前的显示
        }
      }
    }
  }
}
allGame();

这是一个简单的案例,小生入行不久,有什么不妥的地方欢迎大家指教。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浏览器打开层自动缓慢展开收缩实例代码
Jul 04 Javascript
JS实现鼠标经过好友列表中的好友头像时显示资料卡的效果
Jul 02 Javascript
jQuery如何使用自动触发事件trigger
Nov 29 Javascript
js只执行1次的函数示例
Jul 20 Javascript
js中字符型和数值型数字的互相转化方法(必看)
Apr 25 Javascript
JavaScript创建对象的七种方式全面总结
Aug 21 Javascript
Vue项目组件化工程开发实践方案
Jan 09 Javascript
vue项目中导入swiper插件的方法
Jan 30 Javascript
原生js实现省市区三级联动代码分享
Feb 12 Javascript
详解封装基础的angular4的request请求方法
Jun 05 Javascript
微信小程序支付功能 php后台对接完整代码分享
Jun 12 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
Sep 08 Javascript
Vue实现点击时间获取时间段查询功能
Aug 21 #Javascript
vue组件实现弹出框点击显示隐藏效果
Oct 26 #Javascript
vue.extend实现alert模态框弹窗组件
Apr 28 #Javascript
总结JavaScript在IE9之前版本中内存泄露问题
Apr 28 #Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
Apr 28 #Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
Apr 28 #Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
Apr 27 #Javascript
You might like
记录mysql性能查询过程的使用方法
2013/05/02 PHP
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
php目录遍历函数opendir用法实例
2014/11/20 PHP
thinkphp模板的包含与渲染实例分析
2014/11/26 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
php获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
PHP封装的非对称加密RSA算法示例
2018/05/28 PHP
JavaScript 页面坐标相关知识整理
2010/01/09 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
javascript打印大全(打印页面设置/打印预览代码)
2013/03/29 Javascript
如何在JavaScript中实现私有属性的写类方式(一)
2013/12/04 Javascript
javascript时间函数大全
2014/06/30 Javascript
JavaScript实现文字跟随鼠标特效
2015/08/06 Javascript
超链接怎么正确调用javascript函数
2016/05/23 Javascript
javascript特殊文本输入框网页特效
2016/09/13 Javascript
JavaScript 事件对内存和性能的影响
2017/01/22 Javascript
原生javascript实现读写CSS样式的方法详解
2017/02/20 Javascript
express启用https使用小记
2019/05/21 Javascript
js前端如何写一个精确的倒计时代码
2019/10/25 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
2020/11/02 Javascript
Python正则表达式如何进行字符串替换实例
2016/12/28 Python
详解tensorflow载入数据的三种方式
2018/04/24 Python
Django缓存系统实现过程解析
2019/08/02 Python
python 画出使用分类器得到的决策边界
2019/08/21 Python
Python3+Flask安装使用教程详解
2021/02/16 Python
美国在线自行车商店:Jenson USA
2018/05/22 全球购物
读书活动实施方案
2014/03/10 职场文书
绩效考核实施方案
2014/03/18 职场文书
班风学风建设方案
2014/05/06 职场文书
煤矿安全承诺书
2014/05/22 职场文书
文秘专业应届生求职信
2014/05/26 职场文书
离婚协议书范本样本
2014/08/19 职场文书
学校组织向国旗敬礼活动方案(中小学适用)
2014/09/27 职场文书
小学教师见习总结
2015/06/23 职场文书
餐厅营销的秘密:为什么老顾客会流水?
2019/08/08 职场文书