js实现二级菜单点击显示当前内容效果
2018-04-28 10:04
931 查看
最近做了一个二级菜单点击事件的效果,一级菜单有3个,二级菜单是固定的,而且html布局并不是父子级关系,具体请看效果图如下
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();
这是一个简单的案例,小生入行不久,有什么不妥的地方欢迎大家指教。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- mm_menu.js(实现鼠标移入横向显示二级菜单效果)(1)
- mm_menu.js(实现鼠标移入横向显示二级菜单效果)
- mm_menu.js(实现鼠标移入横向显示二级菜单效果)(2)
- JS实现选中当前菜单后高亮显示的导航条效果
- 如何实现js展开收起(折叠)效果呢?例如:一段内容过长了,我限制他显示为20个字内,但是超出了20的就先用省略号代替,然后后面添加一个展开,点击展开后就显示所有的内容,这时候展开按钮就变成了 折叠按钮
- JS实现选中当前菜单后高亮显示的导航条效果
- 二级菜单点击显示当前内容
- js实现 菜单层和内容层 共同显示 效果
- 简单实现js点击展开二级菜单功能
- Js实现当前点击a标签变色突出显示其他a标签回复原色
- JS/jQuery实现默认显示部分文字点击按钮显示全部内容
- JS闭包实现给DIV添加事件 显示二级菜单例子
- jq与JS点击显示隐藏二级菜单的几种方法
- ExpandableListView 动态加载 点击一级菜单时再加载二级菜单的内容实现
- js实现显示当前状态的导航效果代码
- ext4js 主页面布局,动态分配菜单,并点击url 显示到内容面板中
- js处理文章内容匹配关键词,关键词高亮显示效果的实现
- js实现鼠标点击左上角滑动菜单效果代码
- js实现当前导航菜单高亮显示
- jQuery实现可高亮显示的二级CSS菜单效果