Jquery 垂直多级手风琴菜单附源码下载


Posted in Javascript onNovember 17, 2015

首先给大家展示下效果图,喜欢的朋友继续往下看哦。

Jquery 垂直多级手风琴菜单附源码下载

这是一款简单但实用的多级垂直手风琴下拉列表菜单。该多级手风琴菜单完全使用CSS来制作,它通过将不同的子菜单进行分组,制作出多级菜单的效果。

该多级手风琴菜单通过在checkbox元素上使用:checked伪元素来制作。如果需要一些好看的动画效果,可以实用插件中提供的main.js文件,它可以提供菜单打开和收缩时左侧小箭头的动画效果。

 效果演示       源码下载

使用方法

HTML结构

该多级手风琴菜单的HTML结构非常简单:整个手风琴是一个无序列表。如果某个列表项中包含有子菜单,则添加一个input[type=checkbox]和一个label标签,同时为该列表项添加一个.has-children的class类。所有其它标准的列表项都包含在一个a标签中。

<ul class="cd-accordion-menu">
 <li class="has-children">
 <input type="checkbox" name ="group-1" id="group-1" checked>
 <label for="group-1">Group 1</label>
 <ul>
 <li class="has-children">
  <input type="checkbox" name ="sub-group-1" id="sub-group-1">
 <label for="sub-group-1">Sub Group 1</label>
 <ul>
  <li><a href="#0">Image</a></li>
  <li><a href="#0">Image</a></li>
  <li><a href="#0">Image</a></li>
 </ul>
 </li>
 <li><a href="#0">Image</a></li>
 <li><a href="#0">Image</a></li>
 </ul>
 </li>
 <li><a href="#0">Image</a></li>
 <li><a href="#0">Image</a></li>
</ul> <!-- cd-accordion-menu -->

 CSS样式

该多级手风琴菜单仅使用CSS来检测点击和展开子菜单。它使用的方法是通过checkbox元素,然后通过:checked伪类和相邻的兄弟选择器来改变<ul>元素的显示模式,从“none”改变为“block”。

首先需要确保所有有子菜单的列表项都带有checkbox元素。当你点击在一个label元素上的时候,实际是点击了相应的checkbox元素:这通过设置label元素的for属性来实现。接着就可以简单的隐藏checkbox元素,通过label元素来取代它。

.cd-accordion-menu input[type=checkbox] {
 /* hide native checkbox */
 position: absolute;
 opacity: 0;
}
.cd-accordion-menu label, .cd-accordion-menu a {
 position: relative;
 display: block;
 padding: 18px 18px 18px 64px;
 background: #4d5158;
 box-shadow: inset 0 -1px #555960;
 color: #ffffff;
 font-size: 1.6rem;
}

 JavaScript

如果你需要为这个手风琴菜单添加一些好看的动画效果,可以使用jQuery和插件中提供的main.js文件。同时需要在ul.cd-accordion-menu元素上添加.animate class类,它会使小箭头的方向在打开和关闭子菜单时产生动画效果。

以上内容就是本文给大家介绍的Jquery 垂直多级手风琴菜单附源码下载的全部叙述,希望大家喜欢。喜欢的朋友可以直接点击下载源码哦。

Javascript 相关文章推荐
通过jQuery打造支持汉字,拼音,英文快速定位查询的超级select插件
Jun 18 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
Jan 22 Javascript
js通过八个点 拖动改变div大小的实现方法
Mar 05 Javascript
ajax提交表单实现网页无刷新注册示例
May 08 Javascript
javascript实现的上下无缝滚动效果
Sep 19 Javascript
微信小程序 action-sheet 反馈上拉菜单简单实例
May 11 Javascript
Angular.js组件之input mask对input输入进行格式化详解
Jul 10 Javascript
vue源码学习之Object.defineProperty对象属性监听
May 30 Javascript
记一次用vue做的活动页的方法步骤
Apr 11 Javascript
node.js实现带进度条的多文件上传
Mar 27 Javascript
微信小程序 数据缓存实现方法详解
Aug 26 Javascript
解决VUE-Router 同一页面第二次进入不刷新的问题
Jul 22 Javascript
JavaScript代码实现禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt
Nov 17 #Javascript
跟我学习javascript的undefined与null
Nov 17 #Javascript
跟我学习javascript的arguments对象
Nov 16 #Javascript
JavaScript函数学习总结以及相关的编程习惯指南
Nov 16 #Javascript
js实现获取div坐标的方法
Nov 16 #Javascript
跟我学习javascript的闭包
Nov 16 #Javascript
jQuery链式操作实例分析
Nov 16 #Javascript
You might like
php 面向对象的一个例子
2011/04/12 PHP
PHP中使用crypt()实现用户身份验证的代码
2012/09/05 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
2014/08/16 PHP
php实现的双向队列类实例
2014/09/24 PHP
浅谈使用PHP开发微信支付的流程
2015/10/04 PHP
如何解决phpmyadmin导入数据库文件最大限制2048KB
2015/10/09 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
2016/10/18 PHP
PHP 文件写入和读取操作实例详解【必看篇】
2019/11/04 PHP
thinkphp诸多限制条件下如何getshell详解
2020/12/09 PHP
javascript 面向对象编程基础:封装
2009/08/21 Javascript
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
2013/03/22 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
jquery+easeing实现仿flash的载入动画
2015/03/10 Javascript
js实现简单的联动菜单效果
2015/08/19 Javascript
vue中SPA单页面应用程序详解
2017/11/07 Javascript
关于axios如何全局注册浅析
2018/01/14 Javascript
快速解决brew安装特定版本flow的问题
2018/05/17 Javascript
JQuery扩展对象方法操作示例
2018/08/21 jQuery
微信小程序实现两边小中间大的轮播效果的示例代码
2018/12/07 Javascript
浅谈vuex actions和mutation的异曲同工
2018/12/13 Javascript
Vertx基于EventBus发送接受自定义对象
2020/11/16 Javascript
[38:51]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-CDEC
2014/05/22 DOTA
对python while循环和双重循环的实例详解
2019/08/23 Python
pycharm修改file type方式
2019/11/19 Python
pymysql的简单封装代码实例
2020/01/08 Python
利用CSS3实现炫酷的飞机起飞动画
2016/09/17 HTML / CSS
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
开朗女孩的自我评价
2014/02/10 职场文书
计算机大学生职业生涯规划书范文
2014/02/19 职场文书
《凡卡》教学反思
2014/04/09 职场文书
2014幼儿园小班工作总结
2014/11/10 职场文书
遗失说明具结保证书
2015/02/26 职场文书
蜗居观后感
2015/06/11 职场文书
2015元旦感言
2015/12/09 职场文书
详解CSS伪元素的妙用单标签之美
2021/05/25 HTML / CSS
关于vue-router-link选择样式设置
2022/04/30 Vue.js