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 相关文章推荐
用javascript实现的图片马赛克后显示并切换加文字功能
Apr 21 Javascript
Event altKey,ctrlKey,shiftKey属性解析
Dec 18 Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 Javascript
JavaScript中pop()方法的使用教程
Jun 09 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 Javascript
JS用斜率判断鼠标进入DIV四个方向的方法
Nov 07 Javascript
使用JS批量选中功能实现更改数据库中的status状态值(批量展示)
Nov 22 Javascript
Canvas 制作动态进度加载水球详解及实例代码
Dec 09 Javascript
jQuery EasyUI Panel面板组件使用详解
Feb 28 Javascript
微信小程序项目实践之主页tab选项实现
Jul 18 Javascript
详解Webpack如何引入CDN链接来优化编译后的体积
Jun 21 Javascript
vue如何限制只能输入正负数及小数
Jul 04 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
PHP 模板高级篇总结
2006/12/21 PHP
用PHP实现Ftp用户的在线管理
2012/02/16 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
2017/12/14 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
javascript编程起步(第四课)
2007/01/10 Javascript
Mootools 1.2教程(2) DOM选择器
2009/09/14 Javascript
javascript 匿名函数的理解(透彻版)
2010/01/28 Javascript
jquery使用ColorBox弹出图片组浏览层实例演示
2013/03/14 Javascript
js 为label标签和div标签赋值的方法
2013/08/08 Javascript
JavaScript创建对象的写法
2013/08/29 Javascript
jquery 操作两个select实现值之间的互相传递
2014/03/07 Javascript
JS实现往下不断流动网页背景的方法
2015/02/27 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
javascript实现禁止鼠标滚轮事件
2015/07/24 Javascript
jQuery ajax时间差导致的变量赋值问题分析
2016/01/22 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
利用Javascript实现简单的转盘抽奖
2017/02/13 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
2017/10/26 Javascript
MVVM 双向绑定的实现代码
2018/06/21 Javascript
浅谈vue项目4rs vue-router上线后history模式遇到的坑
2018/09/27 Javascript
浅谈js中的bind
2019/03/18 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
JS实现“全选”和&quot;全不选&quot;功能代码实例
2020/02/06 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
基于Python如何使用AIML搭建聊天机器人
2016/01/27 Python
利用Python实现Windows定时关机功能
2017/03/21 Python
解决使用export_graphviz可视化树报错的问题
2019/08/09 Python
Python Numpy 自然数填充数组的实现
2019/11/28 Python
俄罗斯建筑和装饰材料在线商店:Stroilandia
2020/07/25 全球购物
小学生期末自我鉴定
2014/01/19 职场文书
《落花生》教学反思
2014/02/25 职场文书
家庭财产分割协议范文
2014/11/24 职场文书
悬空寺导游词
2015/02/05 职场文书
干部培训工作总结2015
2015/05/25 职场文书
2016八一建军节慰问信
2015/11/30 职场文书
2019财务毕业实习报告
2019/06/27 职场文书