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 相关文章推荐
js实现DIV的一些简单控制
Jun 04 Javascript
javascript下arguments,caller,callee,call,apply示例及理解
Dec 24 Javascript
JavaScript四种调用模式和this示例介绍
Jan 02 Javascript
Javascript闭包(Closure)详解
May 05 Javascript
jQuery模拟360浏览器切屏效果幻灯片(附demo源码下载)
Jan 29 Javascript
简单谈谈json跨域
Mar 13 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
Mar 30 Javascript
JS实现简单短信验证码界面
Aug 07 Javascript
详解ajax的data参数错误导致页面崩溃
Apr 30 Javascript
微信小程序自定义键盘 内部虚拟支付
Dec 20 Javascript
一起深入理解js中的事件对象
Feb 06 Javascript
如何利用js在两个html窗口间通信
Apr 27 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数据库操作类
2007/09/02 PHP
PHP生成UTF8文件的方法
2010/05/15 PHP
php 常用算法和时间复杂度
2013/07/01 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
PHP简单实现数字分页功能示例
2016/08/24 PHP
PHP实现数组的笛卡尔积运算示例
2017/12/15 PHP
CI框架教程之优化验证码机制详解【验证码辅助函数】
2019/04/16 PHP
表单切换,用回车键替换Tab健(不支持IE)
2011/07/20 Javascript
seajs1.3.0源码解析之module依赖有序加载
2012/11/07 Javascript
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
javascript获取设置div的高度和宽度兼容任何浏览器
2013/09/22 Javascript
JS操作Cookies的小例子
2013/10/15 Javascript
讨论html与javascript在浏览器中的加载顺序问题
2013/11/27 Javascript
php,js,css字符串截取的办法集锦
2014/09/26 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
浅谈jquery.form.js的ajaxSubmit和ajaxForm的使用
2016/09/09 Javascript
js实现简单的网页换肤效果
2017/01/18 Javascript
JS随机数产生代码分享
2018/02/24 Javascript
ES6关于Promise的用法详解
2018/05/07 Javascript
JS字符串常用操作方法实例小结
2019/06/24 Javascript
centos 下面安装python2.7 +pip +mysqld
2014/11/18 Python
基于Python os模块常用命令介绍
2017/11/03 Python
python3使用smtplib实现发送邮件功能
2018/05/22 Python
python3爬取数据至mysql的方法
2018/06/26 Python
Python进阶之@property动态属性的实现
2019/04/01 Python
python字符串反转的四种方法详解
2019/12/02 Python
Pytorch Tensor 输出为txt和mat格式方式
2020/01/03 Python
Python3变量与基本数据类型用法实例分析
2020/02/14 Python
前端实现打印图像功能
2019/08/27 HTML / CSS
法国创作个性化T恤衫和其他定制产品平台:Tostadora
2018/04/08 全球购物
应用心理学专业求职信
2014/08/04 职场文书
竞选大学学委演讲稿
2014/09/13 职场文书
解除劳动合同证明书
2014/09/26 职场文书
扶贫办主任查摆“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
廉洁自律个人总结
2015/02/14 职场文书
Python基于百度AI实现抓取表情包
2021/06/27 Python