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

Demo: http://www.helloweba.com/demo/multi_menu/
Download: http://www.helloweba.com/demo/down/multi_menu.rar
HTML
首先在head间引用jQuery和插件。
接着,在body间写上菜单主体代码,HTML代码将由一系列无序列表组成。
手风琴菜单一般用于下拉导航,由于外观非常简洁,使用起来跟手风琴一样可以拉伸和收缩而得名,项目中适当应用手风琴效果会给用户带来非常好的体验。本文借助jQuery插件轻松打造一个非常不错的手风琴效果的菜单。

Demo: http://www.helloweba.com/demo/multi_menu/
Download: http://www.helloweba.com/demo/down/multi_menu.rar
HTML
首先在head间引用jQuery和插件。
1 2 3 |
Html代码 <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/accordion.js"></script> |
接着,在body间写上菜单主体代码,HTML代码将由一系列无序列表组成。
CSS
当然,我们要为这个无序列表加上样式,让它非常简洁的呈现在屏幕上。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
ul { list-style: none } .nav { width: 213px; padding: 40px 28px 25px 0; font-family: "Microsoft yahei", Arial, Helvetica, sans-serif; } ul.nav { padding: 0; margin: 0; font-size: 1em; line-height: 0.5em; list-style: none; } ul.nav li { } ul.nav ul { margin: 0; padding: 0; display: none; } ul.nav ul li { margin: 0; padding: 0; clear: both; } /*第一级*/ 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 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插件,设置相关属性,一个漂亮的手风琴效果就完成了。
可以看出,区分多级,其实是靠css的背景等信息来区分的。
Accordion提供以下选项设置:
speed:数字毫秒,设置菜单展开和关闭的时间。
closedSign:当下级菜单关闭时,显示于菜单旁边的内容,可以是任意html或者text。
openedSign:当下级菜单展开时,显示于菜单旁边的内容,可以是任意html或者text。
注意,如果你想菜单初始载入时就展开的话,可以在对应要展开的li上加class=”active”。
声明:本文为原创文章,helloweba.com和作者拥有版权,如需转载,请注明来源于helloweba.com并保留原文链接,否则视为侵权。