jQuery实现的手风琴侧边菜单效果
程序员文章站
2023-11-12 08:15:04
本文实例讲述了jquery实现的手风琴侧边菜单效果。分享给大家供大家参考,具体如下:
动手做了一个简单手风琴菜单,上图:
点击 b 可收缩 c 列表,点击 c 改变...
本文实例讲述了jquery实现的手风琴侧边菜单效果。分享给大家供大家参考,具体如下:
动手做了一个简单手风琴菜单,上图:
点击 b 可收缩 c 列表,点击 c 改变自身和父节点 b 的样式,悬浮时均有不同的样式改变。
先看页面代码,列表的嵌套:
<div id="menudiv"> <ul id="menu"> <li class="parentli"> <span>b</span> <ul class="childrenul"> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> </ul> </li> <li class="parentli"> <span>b</span> <ul class="childrenul"> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> </ul> </li> <li class="parentli"> <span>b</span> <ul class="childrenul"> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> <li class="childrenli"><span>c</span></li> </ul> </li> </ul> </div>
css 代码,主要设置背景色和子菜单左边框的样式,设置悬浮和选中的样式,开始设置子菜单不显示(通过 js 设置点击之后再显示):
#menudiv{ width: 200px; background-color: #029fd4; } .parentli { width: 100%; line-height: 40px; margin-top: 1px; background: #1c73ba; color: #fff; cursor: pointer; font-weight:bolder; } .parentli span { padding: 10px; } .parentli:hover, .selectedparentmenu { background: #0033cc; } .childrenul { background-color: #ffffff; display: none; } .childrenli { width: 100%; line-height: 30px; font-size: .9em; margin-top: 1px; background: #63b8ff; color: #000000; padding-left: 15px; cursor: pointer; } .childrenli:hover, .selectedchildrenmenu { border-left: 5px #0033cc solid; background: #0099cc; padding-left: 15px; }
接下来就是点击事件的代码:
$(".parentli").click(function(event) { $(this).children('.childrenul').slidetoggle(); }); $(".childrenli").click(function(event) { event.stoppropagation(); $(".childrenli").removeclass('selectedchildrenmenu'); $(".parentli").removeclass('selectedparentmenu'); $(this).parents(".parentli").addclass('selectedparentmenu'); $(this).addclass('selectedchildrenmenu'); });
需要注意的是列表嵌套,会导致事件冒泡,所以在子菜单的点击事件里面要组织冒泡,event.stoppropagation(); 详见 api
更多关于jquery相关内容感兴趣的读者可查看本站专题:《jquery表格(table)操作技巧汇总》、《jquery切换特效与技巧总结》、《jquery扩展技巧总结》、《jquery常用插件及用法总结》、《jquery拖拽特效与技巧总结》、《jquery中ajax用法总结》、《jquery常见经典特效汇总》、《jquery动画与特效用法总结》及《jquery选择器用法总结》
希望本文所述对大家jquery程序设计有所帮助。
上一篇: Ai简单绘制一个圆形按钮
下一篇: 50行代码实现贪吃蛇(具体思路及代码)