基于jQuery实现以手风琴方式展开和折叠导航菜单


Posted in Javascript onJanuary 28, 2016

本章节分享一段代码实例,它实现了手风琴方式展开和折叠导航菜单效果。

代码实例如下:

代码实例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312">
<meta name="author" content="https://3water.com/" />
<title>三水点靠木</title>
<style>
dl{width:150px;}
dl,dd{margin:0;}
dt{
 background:gray;
 font-size:14px;
 padding:2px;
 margin:2px;
}
dt{color:#FFF;}
dd a{
 color:#000;
 font-size:12px;
}
ul{
 list-style:none;
 padding:2px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script>
$(document).ready(function(){
 $("dd:not(:first)").hide();
 $("dt a").click(function(){
  $("dd:visible").slideUp("slow");
  $(this).parent().next().slideDown("slow");
  return false;
 });
});
</script>
</head>
<body>
<dl>
 <dt><a href="#">三水点靠木一</a></dt>
 <dd>
  <ul>
   <li><a href="#">div教程</a></li>
   <li><a href="#">css教程</a></li>
   <li><a href="#">jquery教程</a></li>
  </ul>
 </dd>
 <dt><a href="#">三水点靠木二</a></dt>
 <dd>
  <ul>
   <li><a href="#">正则教程</a></li>
   <li><a href="#">三水点靠木</a></li>
  </ul>
 </dd>
 <dt><a href="#">三水点靠木三</a></dt>
 <dd>
  <ul>
   <li><a href="#">ajax教程</a></li>
   <li><a href="#">softwhy.com</a></li>
   <li><a href="#">js教程</a></li>
  </ul>
 </dd>
</dl>
</body>
</html>

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).$(document).ready(function(){}),当文档结构完全加载完毕再去执行函数中的代码。
(2).$("dd:not(:first)").hide(),除第一个dd元素之外的所有dd元素隐藏,就是第一个导航菜单的子菜单是展开的,其他隐藏。
(3).$("dt a").click(function(){}),为dt元素下的a元素注册click事件处理函数。
(4).$("dd:visible").slideUp("slow"),所有已经显示的dd元素通过动画方式收缩隐藏。
(5).$(this).parent().next().slideDown("slow"),当前连接a元素的父元素也就是dt元素,dt元素的下一个元素就是二级菜单dd元素,将此菜单以动画方式展开。
(6).return false,这个很重要,防止链接的跳转动作。

以上所述是小编给大家分享基于jQuery实现以手风琴方式展开和折叠导航菜单,希望对大家有所帮助。

Javascript 相关文章推荐
cookie在javascript中的使用技巧以及隐私在服务器端的设置
Dec 03 Javascript
jQuery插件开发基础简单介绍
Jan 07 Javascript
jquery获取tr并更改tr内容示例代码
Feb 13 Javascript
javascript删除数组重复元素的方法汇总
Jun 24 Javascript
手机端图片缩放旋转全屏查看PhotoSwipe.js插件实现
Aug 25 Javascript
bootstrap监听滚动实现头部跟随滚动
Nov 08 Javascript
JavaScript实现的浏览器下载文件的方法
Aug 09 Javascript
微信、QQ、微博、Safari中使用js唤起App
Jan 24 Javascript
详解Immutable及 React 中实践
Mar 01 Javascript
关于Vue的路由权限管理的示例代码
Mar 06 Javascript
ES6入门教程之变量的解构赋值详解
Apr 13 Javascript
Bootstrap实现省市区三级联动(亲测可用)
Jul 26 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 #Javascript
js+canvas绘制矩形的方法
Jan 28 #Javascript
js+canvas简单绘制圆圈的方法
Jan 28 #Javascript
谈一谈javascript闭包
Jan 28 #Javascript
JavaScript统计字符串中每个字符出现次数完整实例
Jan 28 #Javascript
基于javascript实现checkbox复选框实例代码
Jan 28 #Javascript
JavaScript黑洞数字之运算路线查找算法(递归算法)实例
Jan 28 #Javascript
You might like
探讨多键值cookie(php中cookie存取数组)的详解
2013/06/06 PHP
PHP实现通过CURL上传文件功能示例
2018/05/30 PHP
js 巧妙去除数组中的重复项
2010/01/25 Javascript
关于ExtJS4.1:快捷键支持的问题
2013/04/24 Javascript
JS定义回车事件(实现代码)
2013/07/08 Javascript
jquery submit ie6下失效的原因分析及解决方法
2013/11/15 Javascript
javascript实现简单的页面右下角提示信息框
2015/07/31 Javascript
AngularJS入门教程之ng-checked 指令详解
2016/08/01 Javascript
AngularJS基础 ng-mouseover 指令简单示例
2016/08/02 Javascript
javascript self对象使用详解
2016/10/18 Javascript
利用JQuery实现datatables插件的增加和删除行功能
2017/01/06 Javascript
基于vue的短信验证码倒计时demo
2017/09/13 Javascript
JavaScript使用prototype原型实现的封装继承多态示例
2018/08/31 Javascript
Vue.js实现表格渲染的方法
2018/09/07 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
JS实现图片切换特效
2019/12/23 Javascript
[48:32]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs VG
2018/04/01 DOTA
Django中对数据查询结果进行排序的方法
2015/07/17 Python
python3中property使用方法详解
2019/04/23 Python
使用python动态生成波形曲线的实现
2019/12/04 Python
解决Pytorch训练过程中loss不下降的问题
2020/01/02 Python
Python flask框架实现查询数据库并显示数据
2020/06/04 Python
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
德国便宜的宠物店:Brekz.de
2020/10/23 全球购物
中科软测试工程师面试题
2012/06/16 面试题
某公司部分笔试题
2013/11/05 面试题
家长会演讲稿范文
2014/01/10 职场文书
银行批评与自我批评
2014/02/10 职场文书
团队口号大全
2014/06/06 职场文书
感恩教育月活动总结
2014/07/07 职场文书
课外活动总结范文
2014/07/09 职场文书
学校总务处领导班子民主生活会对照检查材料思想汇报
2014/09/27 职场文书
2014年财务个人工作总结
2014/12/08 职场文书
2016年万圣节家长开放日活动总结
2016/04/05 职场文书
深入理解python协程
2021/06/15 Python
python中使用redis用法详解
2022/12/24 Redis