jQuery多级手风琴菜单实例讲解


Posted in Javascript onOctober 22, 2015

手风琴菜单一般用于下拉导航,由于外观非常简洁,使用起来跟手风琴一样可以拉伸和收缩而得名,项目中适当应用手风琴效果会给用户带来非常好的体验。本文借助jQuery插件轻松打造一个非常不错的手风琴效果的菜单。

jQuery多级手风琴菜单实例讲解

HTML
首先在head间引用jQuery和插件。

<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/accordion.js"></script>

接着,在body间写上菜单主体代码,HTML代码将由一系列无序列表组成。

<ul class="nav"> 
 <li><a href="//3water.com">首页</a></li> 
 <li><a href="#">服务</a></li> 
 <li><a href="#">案例</a></li> 
 <li><a href="#">文章</a></a> 
  <ul> 
   <li><a href="#" target="_blank">XHTML/CSS</a></li> 
   <li><a href="#">Javascript/Ajax/jQuery</a> 
    <ul> 
     <li><a href="#">Cookies</a></li> 
     <li><a href="#">Event</a></li> 
     <li><a href="#">Games</a></li> 
     <li><a href="#">Images</a></li> 
    </ul> 
   </li> 
   <li><a href="#" target="_blank">PHP/MYSQL</a></li> 
   <li><a href="#" target="_blank">前端观察</a></li> 
   <li><a href="#" target="_blank">HTML5/移动WEB应用</a></li> 
  </ul> 
 </li> 
 <li><a href="#">关于</a></li> 
</ul>

CSS
当然,我们要为这个无序列表加上样式,让它非常简洁的呈现在屏幕上。

.nav {width: 213px; padding: 40px 28px 25px 0;} 
ul.nav {padding: 0; margin: 0; font-size: 1em; line-height: 0.5em; list-style: none;} 
ul.nav li {} 
ul.nav li a {line-height: 10px; font-size: 14px; padding: 10px 5px; color: #000; display: block; 
text-decoration: none; font-weight: bolder;} 
ul.nav li a:hover {background-color:#675C7C; color:white;} 
ul.nav ul { margin: 0; padding: 0;display: none;} 
ul.nav ul li { margin: 0; padding: 0; clear: both;} 
ul.nav ul li a { padding-left: 20px; font-size: 12px; font-weight: normal;} 
ul.nav ul li a:hover {background-color:#D3C99C; color:#675C7C;} 
ul.nav ul ul li a {color:silver; padding-left: 40px;} 
ul.nav ul ul li a:hover { background-color:#D3CEB8; color:#675C7C;} 
ul.nav span{float:right;}

jQuery
调用accordion插件,设置相关属性,一个漂亮的手风琴效果就完成了。

$(function(){ 
 $(".nav").accordion({ 
  speed: 500, 
  closedSign: '[+]', 
  openedSign: '[-]' 
 }); 
});

Accordion提供以下选项设置:
speed:数字毫秒,设置菜单展开和关闭的时间。
closedSign:当下级菜单关闭时,显示于菜单旁边的内容,可以是任意html或者text。
openedSign:当下级菜单展开时,显示于菜单旁边的内容,可以是任意html或者text。
注意,如果你想菜单初始载入时就展开的话,可以在对应要展开的li上加class="active"。

是不是看完这篇文章,有没有想把自己原来的菜单抛弃了,那就赶紧行动吧,使自己的网站焕然一新。

Javascript 相关文章推荐
jQuery文本框(input textare)事件绑定方法教程
Apr 24 Javascript
JavaScript的继承的封装介绍
Oct 15 Javascript
非常漂亮的相册集 使用jquery制作相册集
Apr 28 Javascript
使用jquery提交form表单并自定义action的实现代码
May 25 Javascript
js数组常用操作方法小结(增加,删除,合并,分割等)
Aug 02 Javascript
Js遍历键值对形式对象或Map形式的方法
Aug 08 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
Jul 24 Javascript
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
Nov 14 jQuery
微信小程序人脸识别功能代码实例
May 07 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
Dec 09 Javascript
js原生map实现的方法总结
Jan 19 Javascript
node.js中npm包管理工具用法分析
Feb 14 Javascript
使用jquery插件qrcode生成二维码
Oct 22 #Javascript
JavaScrip调试技巧之断点调试
Oct 22 #Javascript
浅析JavaScript 调试方法和技巧
Oct 22 #Javascript
JS+CSS实现的竖向简洁折叠菜单效果代码
Oct 22 #Javascript
浅谈node.js中async异步编程
Oct 22 #Javascript
JS实现不使用图片仿Windows右键菜单效果代码
Oct 22 #Javascript
JS实现新浪博客左侧的Blog管理菜单效果代码
Oct 22 #Javascript
You might like
Mysql和网页显示乱码解决方法集锦
2008/03/27 PHP
PHP获取数组中某元素的位置及array_keys函数应用
2013/01/29 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
PHP与SQL语句常用大全
2016/12/10 PHP
php实现的rc4加密解密类定义与用法示例
2018/08/16 PHP
PHP+jQuery实现双击修改table表格功能示例
2019/02/21 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
Prototype源码浅析 String部分(二)
2012/01/16 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
2013/06/05 Javascript
jQuery基于json与cookie实现购物车的方法
2016/04/15 Javascript
JavaScript判断是否是微信浏览器
2016/06/13 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
jQuery Checkbox 全选 反选的简单实例
2016/11/29 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
2020/03/06 Javascript
JS实现长图上下滚动效果
2020/03/19 Javascript
微信小程序个人中心的列表控件实现代码
2020/04/26 Javascript
基于JQuery和DWR实现异步数据传递
2020/10/16 jQuery
Python编程实现生成特定范围内不重复多个随机数的2种方法
2017/04/14 Python
Python实现的个人所得税计算器示例
2018/06/01 Python
python实现求两个字符串的最长公共子串方法
2018/07/20 Python
Python assert关键字原理及实例解析
2019/12/13 Python
Python利用FFT进行简单滤波的实现
2020/02/26 Python
行政副总岗位职责
2014/02/23 职场文书
文秘大学生求职信
2014/02/25 职场文书
党员2014两会学习心得体会
2014/03/17 职场文书
初中家长寄语
2014/04/02 职场文书
祖国在我心中演讲稿600字
2014/05/04 职场文书
新学期开学演讲稿
2014/05/24 职场文书
规范化管理年活动总结
2014/08/29 职场文书
2014年学习委员工作总结
2014/11/14 职场文书
2014年保卫工作总结
2014/12/05 职场文书
2015年医院后勤工作总结
2015/05/20 职场文书
mysql 索引合并的使用
2021/08/30 MySQL