基于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 相关文章推荐
jquery入门—选择器实现隔行变色实例代码
Jan 04 Javascript
Extjs4 关于Store的一些操作(加载/回调/添加)
Apr 18 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
Aug 08 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
Dec 20 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
Dec 04 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
Jan 23 Javascript
深入探秘jquery瀑布流的实现
Jan 30 Javascript
微信小程序组件 marquee实例详解
Jun 23 Javascript
深入理解vue中slot与slot-scope的具体使用
Jan 26 Javascript
javascript导出csv文件(excel)的方法示例
Aug 25 Javascript
JavaScript异步操作的几种常见处理方法实例总结
May 11 Javascript
微信小程序中使用vant框架的具体步骤
Feb 18 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之readdir函数用法实例
2014/11/13 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
php读取本地json文件的实例
2018/03/07 PHP
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
JavaScript 学习笔记(五)
2009/12/31 Javascript
javascript工具库代码
2012/03/29 Javascript
JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
2013/12/31 Javascript
详解javascript立即执行函数表达式IIFE
2017/02/13 Javascript
jQuery中的deferred对象和extend方法详解
2017/05/08 jQuery
vue 指定组件缓存实例详解
2018/04/01 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
原生JS运动实现轮播图
2021/01/02 Javascript
Python 3实战爬虫之爬取京东图书的图片详解
2017/10/09 Python
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
Python3使用Matplotlib 绘制精美的数学函数图形
2019/04/11 Python
Django+zTree构建组织架构树的方法
2019/08/21 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
2020/01/10 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
keras做CNN的训练误差loss的下降操作
2020/06/22 Python
python3.8动态人脸识别的实现示例
2020/09/21 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
美国50岁以上单身人士约会平台:SilverSingles
2018/06/29 全球购物
Molly Bracken法国电子商店:法国女性时尚品牌
2019/07/24 全球购物
面试求职的个人自我评价
2013/11/16 职场文书
公司庆典邀请函范文
2014/01/13 职场文书
旅游网创业计划书
2014/01/31 职场文书
绿色城市实施方案
2014/03/19 职场文书
教师党员公开承诺书
2014/03/25 职场文书
夫妻双方自愿离婚协议书怎么写
2014/12/01 职场文书
工作失职检讨书范文
2015/05/05 职场文书
离婚起诉书范本
2015/05/18 职场文书
浅谈Python列表嵌套字典转化的问题
2021/04/07 Python