基于jquery实现三级下拉菜单


Posted in Javascript onMay 10, 2016

本文实例为大家分享了jquery三级下拉菜单的具体实现代码,供大家参考,具体内容如下

在写这个的时候,首先要捋顺思路。点一个菜单的时候,其他的要闭合,点一级菜单的时候,二三级菜单要闭合,等等。
大致代码如下:

<body>
 <aside>
  <ul class="one">
   <li> <a href="#" class="a">目录A</a>
    <ul class="two" style="display: none">
     <li><a href="#" class="a">二级目录A</a>
      <ul class="three" style="display: none">
       <li><a href="#">三级目录A</a></li>
      </ul>
     </li>
     <li><a href="#" class="a">二级目录B</a></li>
     <li><a href="#" class="a">二级目录C</a></li>
    </ul>
   </li>
   <li> <a href="#" class="a">目录B</a>
    <ul class="two" style="display: none">
     <li><a href="#" class="a">二级目录A</a>
      <ul class="three" style="display: none">
       <li><a href="#">三级目录A</a></li>
      </ul>
     </li>
     <li><a href="#" class="a">二级目录B</a></li>
     <li><a href="#" class="a">二级目录C</a></li>
    </ul>
   </li>
   <li> <a href="#" class="a">目录C</a> </li>
  </ul>
 </aside>

//jQuery部分
<script src="js/jquery-1.8.3.min.js"></script>
<script>
  $(document).ready(function() {
   $('.a').click(function() {
    if ($(this).siblings('ul').css('display') == 'none') {
     $(this).siblings('ul').slideDown(100).children('li');
     if ($(this).parents('li').siblings('li').children('ul').css('display') == 'block') {
      $(this).parents('li').siblings('li').children('ul').slideUp(100);

     }
    } else {
     //控制自身菜单下子菜单隐藏
     $(this).siblings('ul').slideUp(100);
     //控制自身菜单下子菜单隐藏
     $(this).siblings('ul').children('li').children('ul').slideUp(100);
    }
   });
 });
</script>
</body>

如果要添加样式的话,一定要注意,否则菜单可能会出现错误。
完整代码地址:https://github.com/SabrinaTian/ThreeMenuNav.git
git里还有一个带有图标的案例,不点击的话是+号,菜单打开后,变为-号。
以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
javascript 极速 隐藏/显示万行表格列只需 60毫秒
Mar 28 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
Jan 10 Javascript
Js放到HTML文件中的哪个位置有什么区别
Aug 21 Javascript
浅析BootStrap栅格系统
Jun 07 Javascript
微信小程序 wxapp导航 navigator详解
Oct 31 Javascript
基于Node的React图片上传组件实现实例代码
May 10 Javascript
JS作用域链详解
Jun 26 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
Dec 19 Javascript
详解Vue的常用指令v-if, v-for, v-show,v-else, v-bind, v-on
Oct 12 Javascript
nuxt框架中对vuex进行模块化设置的实现方法
Sep 06 Javascript
es6函数之箭头函数用法实例详解
Apr 25 Javascript
在Echarts图中给坐标轴加一个标识线markLine
Jul 20 Javascript
jQuery Dialog对话框事件用法实例分析
May 10 #Javascript
bootstrap网页框架的使用方法
May 10 #Javascript
浅析Bootstrip的select控件绑定数据的问题
May 10 #Javascript
jQuery的文档处理程序详解
May 10 #Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
May 10 #Javascript
jQuery对象与DOM对象转换方法详解
May 10 #Javascript
jQuery对象的链式操作用法分析
May 10 #Javascript
You might like
强烈推荐:php.ini中文版(2)
2006/10/09 PHP
PHP的开合式多级菜单程序
2006/10/09 PHP
PHP编码规范-php coding standard
2007/03/16 PHP
神盾加密解密教程(二)PHP 神盾解密
2014/06/08 PHP
php检查字符串中是否包含7位GSM字符的方法
2015/03/17 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
用于节点操作的API,颠覆原生操作HTML DOM节点的API
2010/12/11 Javascript
让人印象深刻的10个jQuery手风琴效果应用
2012/05/08 Javascript
jQuery.prototype.init选择器构造函数源码思路分析
2013/02/05 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
微信小程序 前端源码逻辑和工作流详解
2016/10/08 Javascript
vue-axios使用详解
2017/05/10 Javascript
cnpm加速Angular项目创建的方法
2018/09/07 Javascript
Vue源码探究之状态初始化
2018/11/14 Javascript
vue中在vuex的actions中请求数据实例
2019/11/08 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
[58:46]OG vs NAVI 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
Python绘制3d螺旋曲线图实例代码
2017/12/20 Python
django框架使用views.py的函数对表进行增删改查内容操作详解【models.py中表的创建、views.py中函数的使用,基于对象的跨表查询】
2019/12/12 Python
Python imutils 填充图片周边为黑色的实现
2020/01/19 Python
python 字符串格式化的示例
2020/09/21 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
萨克斯第五大道的折扣店:Saks Fifth Avenue OFF 5TH
2016/08/25 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
俄罗斯最大的灯具网站:Fandeco
2020/03/14 全球购物
牛津在线药房:Oxford Online Pharmacy
2020/11/16 全球购物
人力资源管理专业毕业生自荐书
2014/05/25 职场文书
付款委托书范本
2014/10/05 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技