基于Jquery代码实现手风琴菜单


Posted in Javascript onNovember 19, 2015

先给大家展示效果图:

基于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手风琴菜单就实现了。需要的朋友快来参考下吧。

Javascript 相关文章推荐
js获取图片大小的函数代码
Sep 20 Javascript
基于datagrid框架的查询
Apr 08 Javascript
一个网页标题title的闪动提示效果实现思路
Mar 22 Javascript
如何获取网站icon有哪些可行的方法
Jun 05 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
Aug 28 Javascript
JS实现DIV容器赋值的方法
Dec 14 Javascript
让图片跳跃起来  javascript图片轮播特效
Feb 16 Javascript
jQuery生成假加载动画效果
Dec 01 Javascript
JavaScript实现前端实时搜索功能
Mar 26 Javascript
jQuery.ajax向后台传递数组问题的解决方法
May 12 jQuery
Vue单页面应用保证F5强刷不清空数据的解决方案
Jan 31 Javascript
AngularJS发送异步Get/Post请求方法
Aug 13 Javascript
跟我学习javascript的作用域与作用域链
Nov 19 #Javascript
每天一篇javascript学习小结(属性定义方法)
Nov 19 #Javascript
理解 JavaScript Scoping &amp; Hoisting(二)
Nov 18 #Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
Nov 18 #Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
Nov 18 #Javascript
JavaScript如何获取数组最大值和最小值
Nov 18 #Javascript
原生js模拟淘宝购物车项目实战
Nov 18 #Javascript
You might like
PHP怎样调用MSSQL的存储过程
2006/10/09 PHP
在php中判断一个请求是ajax请求还是普通请求的方法
2011/06/28 PHP
php strrpos()与strripos()函数
2013/08/31 PHP
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
PHP把网页保存为word文件的三种方法
2014/04/01 PHP
ThinkPHP实现二级循环读取的方法
2014/11/03 PHP
Zend Framework教程之配置文件application.ini解析
2016/03/10 PHP
javascript内存管理详细解析
2013/11/11 Javascript
javascript实现复制与粘贴操作实例
2014/10/16 Javascript
使用CamanJS在Web页面上处理图像的技巧
2015/08/18 Javascript
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
深入理解JQuery循环绑定事件
2016/06/02 Javascript
bootstrap实现动态进度条效果
2017/03/08 Javascript
Bootstrap 3多级下拉菜单实例
2017/11/23 Javascript
详解React Native 屏幕适配(炒鸡简单的方法)
2018/06/11 Javascript
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
2019/01/09 jQuery
详解几十行代码实现一个vue的状态管理
2019/01/28 Javascript
微信小程序组件传值图示过程详解
2019/07/31 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
2020/12/01 Javascript
Python生成验证码实例
2014/08/21 Python
Python使用设计模式中的责任链模式与迭代器模式的示例
2016/03/02 Python
Python正确重载运算符的方法示例详解
2017/08/27 Python
python判断字符串是否是json格式方法分享
2017/11/07 Python
python3实现多线程聊天室
2018/12/12 Python
HTML如何让IMG自动适应DIV容器大小的实现方法
2020/02/25 HTML / CSS
会计自我鉴定
2013/11/02 职场文书
医学院校毕业生自荐信范文
2014/01/01 职场文书
党员廉洁自律承诺书
2014/05/26 职场文书
中国梦演讲稿开场白
2014/08/28 职场文书
民主评议党员自我评议范文2014
2014/09/26 职场文书
离婚协议书标准格式
2014/10/04 职场文书
2015年党员自我剖析材料
2014/12/17 职场文书
如何才能写好调研报告?
2019/07/03 职场文书
2019年世界儿童日宣传标语
2019/11/22 职场文书
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android