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 相关文章推荐
javascipt匹配单行和多行注释的正则表达式
Nov 20 Javascript
js实现tab切换效果实例
Sep 16 Javascript
js判断当前页面在移动设备还是在PC端中打开
Jan 06 Javascript
BootStrap初学者对弹出框和进度条的使用感觉
Jun 27 Javascript
实例详解jQuery的无new构建
Aug 02 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
Aug 11 Javascript
巧用Javascript的逻辑运算符
Dec 02 Javascript
JS实现侧边栏鼠标经过弹出框+缓冲效果
Mar 29 Javascript
vue 自定义提示框(Toast)组件的实现代码
Aug 17 Javascript
Vue组件的使用及个人理解与介绍
Feb 09 Javascript
微信小程序实现写入读取缓存详解
Aug 30 Javascript
p5.js临摹动态图形的方法
Oct 23 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
我的php学习笔记(毕业设计)
2012/02/21 PHP
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
PHP实现一个轻量级容器的方法
2019/01/28 PHP
Laravel中10个有用的用法小结
2019/05/06 PHP
PHP实现文件上传操作和封装
2020/03/04 PHP
javascript 触发HTML元素绑定的函数
2010/09/11 Javascript
通过上下左右键和回车键切换光标实现代码
2013/03/08 Javascript
如何让浏览器支持jquery ajax load 前进、后退功能
2014/06/12 Javascript
js中style.display=&quot;&quot;无效的解决方法
2014/10/30 Javascript
jQuery简单实现网页选项卡特效
2014/11/24 Javascript
究竟什么是Node.js?Node.js有什么好处?
2015/05/29 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
Node.js Sequelize如何实现数据库的读写分离
2016/10/23 Javascript
微信小程序 switch组件详解及简单实例
2017/01/10 Javascript
python实现2048小游戏
2015/03/30 Python
简单的Python2.7编程初学经验总结
2015/04/01 Python
详解Swift中属性的声明与作用
2016/06/30 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
Python脚本去除文件的只读性操作
2020/03/05 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
2020/07/14 Python
使用HTML5原生对话框元素并轻松创建模态框组件
2019/03/06 HTML / CSS
英国经济型酒店品牌:Travelodge
2019/12/17 全球购物
物流专业大学生的自我鉴定
2013/11/13 职场文书
无工作经验者个人求职信范文
2013/12/22 职场文书
护士自我鉴定怎么写
2014/02/07 职场文书
公司运动会策划方案
2014/05/25 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
工作年限证明模板
2014/11/01 职场文书
学校学期工作总结
2015/08/13 职场文书
JDBC连接的六步实例代码(与mysql连接)
2021/05/12 MySQL
简单聊聊Vue中的计算属性和属性侦听
2021/10/05 Vue.js
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers
Python 数据可视化工具 Pyecharts 安装及应用
2022/04/20 Python