jQuery实现折叠、展开的菜单组效果代码


Posted in Javascript onSeptember 16, 2015

本文实例讲述了jQuery实现折叠、展开的菜单组效果代码。分享给大家供大家参考。具体如下:

这是一款jQuery实现的漂亮的竖向折叠菜单组,初次运行的时候请刷新一下页面,让jQ载入,这款菜单应用广泛,可用到后台左侧,网站前台也可以用,发现自腾讯微博开放平台,分享给大家一起研究吧。提示:如果有错误,请刷新页面。

运行效果截图如下:

jQuery实现折叠、展开的菜单组效果代码

在线演示地址如下:

具体代码如下:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>一个展开合拢的菜单效果</title>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<style>
* { margin:0; padding:0; }
ul,li { list-style:none; }
.catalog { width:164px; margin:0 auto;}
.t1 { height:4px; background:url(images/bg_catalog.gif) left top no-repeat; }
.t2 { background:url(images/bg_catalog.gif) -164px top repeat-y; }
.t3 { height:4px; background:url(images/bg_catalog.gif) left bottom no-repeat; }
.t2 h2 { height:81px; background:url(images/bg_catalog_logo.gif) center no-repeat; text-indent:-9999px; }
.t2 h3 { heigth:36px; line-height:36px; margin:0 1px; text-indent:26px; background:url(images/bg_catalog_icon.gif) no-repeat 13px 14px; font-size:14px; border-top:1px solid #fFF; }
.t2 ul { padding:10px 0; font-size:12px; }
.t2 li { text-indent:27px; height:30px; line-height:30px; }
.selected { display:block;}
.unselected {display:none;}
</style>
</head>
<body>
<div class="re_left">
<div class="catalog">
<div class="t1"></div> 
<div class="t2">
 <h2>资源</h2>
 <h3><a href="javascript:void(0);" src="#">平台使用说明</a></h3>
 <ul class="unselected">
 <li><a href="#">平台介绍</a></li>
 <li><a href="#">应用开发说明</a></li>
 <li><a href="#">应用审核流程</a></li>
 <li style="display:none;"><a href="#">成功案例</a></li>
 <li><a href="#">开发者协议</a></li>
 </ul>
 <h3><a href="javascript:void(0);" src="#">API说明</a></h3>
 <ul class="unselected">
 <li><a href="#">API文档</a></li>
 <li><a href="#">Oauth授权说明</a></li>
 <li><a href="#">API调用权限</a></li>
 </ul>
 <h3><a href="javascript:void(0);" src="#">SDK及资源下载</a></h3>
 <ul class="unselected">
 <li><a href="#">SDK下载</a></li>
 <li><a href="#">视觉素材下载</a></li>
 </ul>
 <h3><a href="javascript:void(0);" src="#">帮助中心</a></h3>
 <ul class="unselected">
 <li><a href="#">常见问题解答</a></li>
 <li><a href="#">返回错误码说明</a></li>
 </ul>
</div>
<div class="t3"></div>
</div>
</div>
<script type="text/javascript">
 $(document).ready(function(){
 var catalogIndex=[0,0];
 if (catalogIndex[0]==2){catalogIndex[0]=3;}
 else if(catalogIndex[0]==3){catalogIndex[0]=2;}
 if(catalogIndex.length==0){catalogIndex=[0,0];}
 $(".re_left .catalog h3 a").each(function(){
  $(this).attr("src",$(this).attr("href"));
  });
 $(".re_left .catalog").find("ul").css("border-bottom",0).end().find("h3:eq("+catalogIndex[0]+")").addClass("open").find("a").attr("href","javascript:void(0);").end().next().css("display","block").find("li:eq("+(catalogIndex[1]-1==-1?9999:catalogIndex[1]-1)+")").addClass("active");$(".re_left .catalog").find("h3").last().css("border-bottom-width","0");});
$(".re_left .catalog").find("h3").bind("click",function(){
  if ($(this).hasClass("open"))
  {
  if ($(this).next().find(".active").size()==0)
  {
   $(this).next().slideUp(500,function(){
   $(this).prev().removeClass("open");
   }); 
  }
  else
  {
   $(this).next().slideUp(500,function(){
   $(this).prev().removeClass("open");
   //window.location.href=$(this).prev().find("a").attr("src");
   });
  }
  }
  else
  {
  $(this).parent().find("ul").slideUp("slow").end().find("h3").removeClass("open");
  $(this).addClass("open").next().slideDown(500,function(){
  if ($(this).nextAll("h3").size()>0)
  {$(this).parent().find("h3").last().css("border-bottom-width","1px");}
  else
  {$(this).parent().find("h3").last().css("border-bottom-width","0");}
  window.location.href=$(this).prev().find("a").attr("src");
  });
  }
  return false;
}); 
</script>
<br><div align="center">提示:如果有错误,请刷新页面。</div>
</body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
从sohu弄下来的flash中展示图片的代码
Apr 27 Javascript
利用js跨页面保存变量做菜单的方法
Jan 17 Javascript
json 定义
Jun 10 Javascript
javascript调试说明
Jun 07 Javascript
JS动态添加与删除select中的Option对象(示例代码)
Dec 20 Javascript
JavaScript获取网页支持表单字符集的方法
Apr 02 Javascript
Angularjs实现mvvm式的选项卡示例代码
Sep 08 Javascript
JS实现超简单的汉字转拼音功能示例
Dec 22 Javascript
js实现音乐播放控制条
Sep 09 Javascript
浅谈Koa服务限流方法实践
Oct 23 Javascript
webpack源码之loader机制详解
Apr 06 Javascript
vue上传图片到oss的方法示例(图片带有删除功能)
Sep 27 Javascript
ANGULARJS中使用JQUERY分页控件
Sep 16 #Javascript
js实现tab切换效果实例
Sep 16 #Javascript
JS实现自动固定顶部的悬浮菜单栏效果
Sep 16 #Javascript
jQuery图片轮播滚动切换代码分享
Apr 20 #Javascript
JS实现光滑展开合拢的菜单效果代码
Sep 16 #Javascript
jQuery实现两款有动画功能的导航菜单代码
Sep 16 #Javascript
javascript中的previousSibling和nextSibling的正确用法
Sep 16 #Javascript
You might like
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
2008/11/18 PHP
解析php中curl_multi的应用
2013/07/17 PHP
php根据年月获取季度的方法
2014/03/31 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十)
2014/06/24 PHP
PHP 自动加载类原理与用法实例分析
2020/04/14 PHP
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
jQuery动态添加删除select项(实现代码)
2013/09/03 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
JavaScript实现的简单烟花特效代码
2015/10/20 Javascript
使用jquery获取url以及jquery获取url参数的实现方法
2016/05/25 Javascript
Nodejs进阶:如何将图片转成datauri嵌入到网页中去实例
2016/11/21 NodeJs
Javascript 对cookie操作详解及实例
2016/12/29 Javascript
深入理解Vue2.x的虚拟DOM diff原理
2017/09/27 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
详解如何使用node.js的开发框架express创建一个web应用
2018/12/20 Javascript
Python解析json文件相关知识学习
2016/03/01 Python
python dict 字典 以及 赋值 引用的一些实例(详解)
2017/01/20 Python
Python使用装饰器进行django开发实例代码
2018/02/06 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
详解pandas数据合并与重塑(pd.concat篇)
2019/07/09 Python
Python列表元素常见操作简单示例
2019/10/25 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
简单了解django处理跨域请求最佳解决方案
2020/03/25 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
python openCV实现摄像头获取人脸图片
2020/08/20 Python
css 元素选择器的简单实例
2016/05/23 HTML / CSS
澳大利亚网上书店:QBD
2021/01/09 全球购物
总经理办公室主任岗位职责
2013/11/12 职场文书
数字化校园建设方案
2014/05/03 职场文书
淘宝店策划方案
2014/06/07 职场文书
大班亲子运动会方案
2014/06/10 职场文书
迎新生晚会主持词
2015/06/30 职场文书
高中历史教学反思
2016/02/19 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书