Jquery学习插件之手风琴
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>手风琴</title>
<link href="css/accordion.css" rel="stylesheet">
<script src="js/jquery-1.11.1.min.js"></script>
<script src="js/accordion.js"></script>
<script>
$(function(){
//插件的应用
$("#ul1").accordion();
});
</script>
</head>
<body>
<ul id="ul1">
<li>111111111<span>第一块</span></li>
<li>22222222222<span>第二块</span></li>
<li>33333333333<span>第三块</span></li>
<li>444444444<span>第四块</span></li>
<li>555555555<span>第五块</span></li>
</ul>
</body>
</html>
js部分
/**
* Created by Iecy on 14-9-5.
* 手风琴插件
*/
;(function($){
$.fn.extend({
accordion:function(options){
var defaults = {
width:"800px",
spanWidth:20,
hideWidth:700
};
var options = $.extend(defaults,options);
var obj = $(this); //当前对象
var obj_children = obj.children();//当前对象下的子级(第一级)
var obj_childern_len = obj_children.length;//子级的个数
var aLeft = [];
obj_children.each(function(){
var index = $(this).index();
$(this).css({zIndex:obj_childern_len-index,left:options.spanWidth*index+"px"});//初始化各个li层级和位置
aLeft[index] = $(this).position().left;//保存下各个手风琴键的位置
}); obj_children.mouseover(function(){
var index = $(this).index();
obj_children.each(function(){
if($(this).index()<index){
obj_children.eq($(this).index()).stop().animate({left:aLeft[$(this).index()]-options.hideWidth+"px"});
}else{
obj_children.eq($(this).index()).stop().animate({left:aLeft[$(this).index()]+'px'});
}
});
});
}
});
})(jQuery);
css部分
* {margin:; padding:; list-style:none;}
/*展开:720px 收起:20px*/
#ul1 {width:800px; height:400px; border:1px solid red; margin:10px auto; position:relative; overflow:hidden;}
#ul1 li {width:720px; height:400px; background:#CCC; position:absolute;}
#ul1 li span {position:absolute; top:; right:; background:#C66; width:18px; height:398px; border:1px solid black; color:white; text-align:center;}
个人练习,路过下就可以了。
Jquery学习插件之手风琴的更多相关文章
- Jquery 学习插件第一天
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...
- jQuery学习之路(8)- 表单验证插件-Validation
▓▓▓▓▓▓ 大致介绍 jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 ...
- 深入学习jQuery自定义插件
原文地址:jQuery自定义插件学习 1.定义插件的方法 对象级别的插件扩展,即为jQuery类的实例增加方法, 调用:$(选择器).函数名(参数); $(‘#id’).myPlugin(o ...
- jQuery学习之:Validation表单验证插件
http://polaris.blog.51cto.com/1146394/258781/ 最近由于公司决定使用AJAX + Struts2来重构项目,让我仔细研究一下这两个,然后集中给同事讲讲,让每 ...
- 基于jquery的插件turn.js学习笔记
基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...
- JQuery zoom插件学习
jquery zoom是一款图片放大插件,经常用在商城商品页面里. 使用JQuery zoom插件,除了需要引入JQuery.js外,还要引入JQuery.zoom.js文件及jqzoom.css文件 ...
- jQuery学习笔记(jquery.form插件)
官网: http://malsup.com/jquery/form/ jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery Fo ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- jQuery学习之路(1)-选择器
▓▓▓▓▓▓ 大致介绍 终于开始了我的jQuery学习之路!感觉不能再拖了,要边学习原生JavaScript边学习jQuery jQuery是什么? jQuery是一个快速.简洁的JavaScript ...
随机推荐
- sh5.while 脚本练习
脚本编程: 顺序结构 选择结构 if, case 循环结构 for,while,until while循环:适用于循环次数未知的场景 语法: while CONDITION;do statement ...
- MVC Code First 当实体类发生变化时,如何自动更新数据库表
下面做一个例子,Category是用户新建的一个实体类,然后添加一个字段,然后让数据库中的Category表也添加一个字段 1.Category.cs
- myeclipse实现包的分层显示
- vs使用
1.控制dll是否生成到本地,如图,右击dll,选择属性,设置复制到本地为true即可
- CSS中定义CLASS时,中间有空格和没空格的区别是什么?
.example .pp{ color: orange; } .example.pp2 { color: green; }如上面的两个定义一个是中间有空格,一个是中间没空格. 第一个class要这样写 ...
- war项目在tomcat上面部署
1.war包放到webapps根目录下. 2.修改tomcat目录下的conf文件夹里面的的server.xml,在<Host></Host>之间加入: <Context ...
- 用python实现一个不排序的列表功能
#!/usr/bin/env python # -*- coding: utf-8 -*- # learn <<Problem Solving with Algorithms and Da ...
- 批量下载小说网站上的小说(python爬虫)
随便说点什么 因为在学python,所有自然而然的就掉进了爬虫这个坑里,好吧,主要是因为我觉得爬虫比较酷,才入坑的. 想想看,你可以批量自动的采集互联网上海量的资料数据,是多么令人激动啊! 所以我就被 ...
- 攻城狮在路上(陆)-- 提交运行MapReduce程序到hadoop集群运行
此种方式不能直接在eclipse中调试代码. 首先需要在src下放置服务器上的hadoop配置文件:core-site.xml\yarn-site.xml\hdfs-site.xml\mapred-s ...
- 安装minicom
安装配置过程: 1.sudo apt-get install minicom 2.执行:sudo minicom -s 配置minicom 切记加sudo 3.然后选择Serial port setu ...