基于jQuery实现简单的折叠菜单效果


Posted in Javascript onNovember 23, 2015

本文实例讲述了JQuery实现简单的折叠菜单效果代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

基于jQuery实现简单的折叠菜单效果

Html代码如下:

<div class="box">
  <p>菜单一</p>
  <ul>
   <li><a>1111</a></li>
   <li><a>1111</a></li>
   <li><a>1111</a></li>
  </ul>
  <p>菜单二</p>
  <ul>
   <li><a>2222</a></li>
   <li><a>2222</a></li>
   <li><a>2222</a></li>
  </ul>
  <p>菜单三</p>
  <ul>
   <li><a>3333</a></li>
   <li><a>3333</a></li>
   <li><a>3333</a></li>
  </ul>
</div>

插件实现代码如下:

(function ($) {
   $.fn.Fold = function (options) {
    //默认参数设置
    var settings = {
     speed: 300 //折叠速度(值越大越慢)
    }

    //不为空则合并参数
    if (options)
     $.extend(settings, options);



 




 //遵循链式原则




 return this.each(function () {

    
//为每个p元素绑定点击事件
    
$("> p", this).each(function () {
     
$(this).bind("click", function () {
      
$(this).next("ul").slideToggle(settings.speed);
     
});
    
});

    
//默认第一个展开,其它折叠
    
$("> ul", this).hide().first().show();
    
    });
   }
})(jQuery);

这里就不作讲解了,注释都写明了。
示例DEMO如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title></title>
 <style type="text/css">
  *{padding:0;margin:0;}
  ul,ul li{ list-style:none;}
  .box{ width:250px; margin:50px auto; border:1px solid gray;}
  .box p{ background-color: Green;color: white;cursor: pointer;font-weight: bold;
  line-height: 40px;padding-left: 15px;}
 </style>
</head>
<body>
 <div class="box">
  <p>菜单一</p>
  <ul>
   <li><a>1111</a></li>
   <li><a>1111</a></li>
   <li><a>1111</a></li>
  </ul>
  <p>菜单二</p>
  <ul>
   <li><a>2222</a></li>
   <li><a>2222</a></li>
   <li><a>2222</a></li>
  </ul>
  <p>菜单三</p>
  <ul>
   <li><a>3333</a></li>
   <li><a>3333</a></li>
   <li><a>3333</a></li>
  </ul>
 </div>

 <script src="../js/jquery-1.4.1.min.js" type="text/javascript"></script>
 <script src="../js/jquery.similar.Fold.js" type="text/javascript"></script>
 <script type="text/javascript">
  $(".box").Fold();
 </script>
</body>
</html>

希望本文所述对大家学习jquery程序设计有所帮助。

Javascript 相关文章推荐
Javascript写入txt和读取txt文件示例
Feb 12 Javascript
jquery中交替点击事件的实现代码
Feb 14 Javascript
Javascript排序算法之计数排序的实例
Apr 05 Javascript
jquery预加载图片的方法
May 27 Javascript
javascript作用域链(Scope Chain)用法实例解析
Nov 30 Javascript
js判断价格,必须为数字且不能为负数的实现方法
Oct 07 Javascript
微信小程序 WebSocket详解及应用
Jan 21 Javascript
微信小程序三级联动地址选择器的实例代码
Jul 12 Javascript
使用JS组件实现带ToolTip验证框的实例代码
Aug 23 Javascript
Koa代理Http请求的示例代码
Oct 10 Javascript
vue+element实现表单校验功能
May 20 Javascript
浅谈Vue 函数式组件的使用技巧
Jun 16 Javascript
jquery无限级联下拉菜单简单实例演示
Nov 23 #Javascript
jquery实现图片放大镜功能
Nov 23 #Javascript
jquery自定义表格样式
Nov 23 #Javascript
jquery实现表单验证简单实例演示
Nov 23 #Javascript
JavaScript与HTML的结合方法详解
Nov 23 #Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 #Javascript
跟我学习javascript的垃圾回收机制与内存管理
Nov 23 #Javascript
You might like
PHP EOT定界符的使用详解
2008/09/30 PHP
php中的观察者模式简单实例
2015/01/20 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
2016/06/13 PHP
php 从指定数字中获取随机组合的简单方法(推荐)
2017/04/05 PHP
PHP抽象类和接口用法实例详解
2019/07/20 PHP
js RuntimeObject() 获取ie里面自定义函数或者属性的集合
2010/11/23 Javascript
jQuery function的正确书写方法
2013/08/02 Javascript
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
2015/10/13 Javascript
jQuery基于排序功能实现上移、下移的方法
2016/11/26 Javascript
bootstrap日历插件datetimepicker使用方法
2016/12/14 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
vue.js中Vue-router 2.0基础实践教程
2017/05/08 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
JavaScript实现前端倒计时效果
2021/02/09 Javascript
[04:55]完美世界副总裁蔡玮:DOTA2的自由、公平与信任
2013/12/18 DOTA
[03:40]2014DOTA2国际邀请赛 B神专访:躲箭真的很难
2014/07/13 DOTA
Python列表(list)所有元素的同一操作解析
2019/08/01 Python
python使用sklearn实现决策树的方法示例
2019/09/12 Python
python bluetooth蓝牙信息获取蓝牙设备类型的方法
2019/11/29 Python
python数据爬下来保存的位置
2020/02/17 Python
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
挪威户外活动服装和装备购物网站:Bergfreunde挪威
2016/10/20 全球购物
意大利会呼吸的鞋:Geox健乐士
2017/02/12 全球购物
Linux中如何设置Java环境变量(Ubuntu)
2016/07/24 面试题
好的自荐信包括什么内容
2013/11/07 职场文书
2014年圣诞节促销方案
2014/03/14 职场文书
2016年入党心得体会范文
2016/01/23 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
MySQL 隔离数据列和前缀索引的使用总结
2021/05/14 MySQL
vue 实现上传组件
2021/05/31 Vue.js
python字符串的多行输出的实例详解
2021/06/08 Python
win sever 2022如何占用操作主机角色
2022/06/25 Servers