基于Jquery代码实现手风琴菜单
更新时间:2015年11月19日 09:08:26 作者:shouce.ren
这篇文章主要介绍了基于Jquery代码实现手风琴菜单,代码简单易懂,需要的朋友参考下
先给大家展示效果图:

先看页面代码,列表的嵌套:
<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();
以上代码很简单,代码就是注释,jquery手风琴菜单就实现了。需要的朋友快来参考下吧。
相关文章
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
这篇文章主要介绍了JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格),本文的这个模拟实现的购物车难登大雅之堂,但是可以从中得到一些启发或者相关的知识点,需要的朋友可以参考下2015-01-01
Ajax分页插件Pagination从前台jQuery到后端java总结
这篇文章主要从前台jQuery到后java端总结了Ajax分页插件Pagination的使用方法和技巧,感兴趣的小伙伴们可以参考一下2016-07-07
jQuery Mobile中的button按钮组件基础使用教程
jQuery Mobile中的button默认提供了很多用于制作移动Web页面按钮的属性,这里我们来整理一下jQuery Mobile中的button按钮组件基础使用教程,需要的朋友可以参考下2016-05-05
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
这篇文章主要介绍了Easyui 关闭jquery-easui tab标签页前触发事件 ,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-04-04
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
这篇文章主要介绍了jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下2016-08-08


最新评论