jquery手风琴特效插件


Posted in Javascript onFebruary 04, 2015

手风琴效果是项目中使用频率较高的一种效果,原来项目一直都在用easyui的,临近年末,试着自己写了一个

css样式

/* CSS Document */

body {

    margin: 0 auto;

    padding: 0 auto;

    font-size: 9pt;

    font-family: 微软雅黑, 宋体, Arial, Helvetica, Verdana, sans-serif;

}

.accordion {

    padding-left: 0px;

}

.accordion li {

    border-top: 1px solid #000;

    list-style-type: none;

}

.titlemenu {

    width: 100%;

    height: 30px;

    background-color: #F2F2F2;

    padding: 5px 0px;

    text-align: left;

    cursor: pointer;

}

.titlemenu img {

    position: relative;

    left: 20px;

    top: 5px;

}

.titlemenu span {

    display: inline-block;

    position: relative;

    left: 40px;

}

.submenu {

    text-align: left;

    width: 100%;

    padding-left: 0px;

}

.submenu li {

    list-style-type: none;

    width: 100%;

}

.submenu li img {

    position: relative;

    left: 20px;

    top: 5px;

}

.submenu li a {

    position: relative;

    left: 40px;

    top: 5px;

    text-decoration: none;

}

.submenu li span {

    display: inline-block;

    height: 30px;

    padding: 5px 0px;

}

.hover {

    background-color: #4A5B79;

}

自定义js

(function ($) {

    piano = function () {

        _menu ='[{"title":"一级目录","img":"images/cog.png","submenu":[{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"}]},{"title":"一级目录","img":"images/cog.png","submenu":[{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"},{"id":"4","title":"二级目录","img":"images/monitor_window_3d.png"}]}]';

        return ep = {

            init: function (obj) {

                _menu = eval('(' + _menu + ')');

                 var li ="";

                $.each(_menu, function (index, element) {

                    li += '<li><div class="titlemenu"><img src=' + element.img + ' width="16" height="16"  alt=""/><span>' + element.title + '</span></div>';

                    if(element.submenu!=null)

                    {

                        li+='<ul class="submenu">';

                        $.each(element.submenu, function (ind, ele) {

                            li += '<li><img src=' + ele.img + ' width="16" height="16"  alt=""/><span><a href="#">' + ele.title + '</a></span></li>';

                        });

                        li+='</ul>';

                    }

                    li+='</li>';

                });

                obj.append(li);

            }

        }

    }

    $.fn.accordion = function (options) {

        var pia = new piano();

        pia.init($(this));

        return this.each(function () {

            var accs = $(this).children('li');

             accs.each(reset);

            accs.click(onClick);

            var menu_li = $(".submenu").children("li");

            menu_li.each(function (index, element) {

                $(this).mousemove(function (e) {

                    $(this).siblings().removeClass("hover");

                    $(this).find("a").css("color", "#fff");

                    $(this).siblings().find("a").css("color", "#000");

                    $(this).addClass("hover");

                });

            });

        });

    }

    function onClick() {

        $(this).siblings('li').find("ul").each(hide);

        $(this).find("ul").slideDown('normal');

        return false;

    }

    function hide() {

        $(this).slideUp('normal');

    }

    function reset() {

        $(this).find("ul").hide();

    }

})(jQuery);

html调用方式

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>无标题文档</title>

<script src="jquery-1.8.0.min.js"></script>

<link rel="stylesheet" type="text/css" href="style.css">

<script src="accordion.js"></script>

<script type="text/javascript">            

    $(function(){

        $("#accordion").accordion();

    });

</script>

</head>

<body>

<ul id="accordion"  class="accordion" style="width:200px;height:500px;">

</ul>

</body>

</html>

显示效果

jquery手风琴特效插件

jquery手风琴特效插件

以上就是本文的全部内容了,希望大家能够喜欢

Javascript 相关文章推荐
基于jquery css3实现点击动画弹出表单源码特效
Aug 31 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
Nov 29 Javascript
JS获取子窗口中返回的数据实现方法
May 28 Javascript
手机图片预览插件photoswipe.js使用总结
Aug 25 Javascript
js格式化时间的简单实例
Nov 27 Javascript
解决Extjs下拉框不显示的问题
Jun 21 Javascript
当vue路由变化时,改变导航栏的样式方法
Aug 22 Javascript
vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法
Nov 05 Javascript
mpvue微信小程序的接口请求fly全局拦截代码实例
Nov 13 Javascript
微信sdk实现禁止微信分享(使用原生php实现)
Nov 15 Javascript
vue实现pdf文档在线预览功能
Nov 26 Javascript
JavaScript 实现下雪特效的示例代码
Sep 09 Javascript
Jquery中find与each方法用法实例
Feb 04 #Javascript
javascript中Array数组的迭代方法实例分析
Feb 04 #Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
Feb 04 #Javascript
15款jQuery分布引导插件分享
Feb 04 #Javascript
jquery $(document).ready()和window.onload的区别浅析
Feb 04 #Javascript
使用jQueryMobile实现滑动翻页效果的方法
Feb 04 #Javascript
jQueryMobile之Helloworld与页面切换的方法
Feb 04 #Javascript
You might like
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
MySql中正则表达式的使用方法描述
2008/07/30 PHP
PHP求小于1000的所有水仙花数的代码
2012/01/10 PHP
php获取Google机器人访问足迹的方法
2015/04/15 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
2015/12/02 PHP
PHP处理二进制数据的实现方法
2016/06/13 PHP
PHP+jQuery实现即点即改功能示例
2019/02/21 PHP
提高网站性能之 如何对待JavaScript
2009/10/31 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
轻松创建nodejs服务器(1):一个简单nodejs服务器例子
2014/12/18 NodeJs
Jquery 垂直多级手风琴菜单附源码下载
2015/11/17 Javascript
EasyUi combotree 实现动态加载树节点
2016/04/01 Javascript
JS控制伪元素的方法汇总
2016/04/06 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
Vue中fragment.js使用方法详解
2017/03/09 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
2018/01/08 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
浅谈React中组件逻辑复用的那些事儿
2020/05/21 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
[01:14:41]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第一场 1月8日
2021/03/11 DOTA
Python实用日期时间处理方法汇总
2015/05/09 Python
对python操作kafka写入json数据的简单demo分享
2018/12/27 Python
python opencv调用笔记本摄像头
2019/08/28 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
Python操作注册表详细步骤介绍
2020/02/05 Python
鲜为人知的HTML5语音合成功能
2019/05/17 HTML / CSS
小程序canvas中文字设置居中锚点
2019/04/16 HTML / CSS
什么是GWT的Module
2013/01/20 面试题
个人查摆问题及整改措施
2014/10/16 职场文书
小学运动会通讯稿
2015/07/18 职场文书
Python如何利用正则表达式爬取网页信息及图片
2021/04/17 Python
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python
Centos7 Shell编程之正则表达式、文本处理工具详解
2022/08/05 Servers