学会自己写jQuery插件(二)---自己写的tab插件
通过上一个基础篇我们知道插件的格式,这次我来写一个tab插件
$(function() {
$.fn.插件名称 = function(options) {
var defaults = {
Event : "click", //触发响应事件
msg : "Holle word!" //显示内容
};
var options = $.extend(defaults,options);
var $this = $(this); //当然响应事件对象
//功能代码部分
//绑定事件
$this.live(options.Event,function(e){
alert(options.msg);
});
}
});
直接贴代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css" media="screen">
*{margin:0;padding: 0;}
li{list-style: none}
.lee_ul{overflow: hidden;zoom:1;}
.lee_ul1{overflow: hidden;zoom:1;}
li{width: 100px;height: 30px;float: left;}
li.active{background: red;}
li.current{background: red;}
.lee_main div{display: none;background: #ccc;width: 300px;}
.lee_main .active{display: block;}
.lee_main1 div{display: none;background: #ccc;width: 300px;}
.lee_main1 .current{display: block;}
</style>
<script type="text/javascript" src="jquery-1.8.3.min.js"></script>
<script type="text/javascript">
;(function($){ $.fn.lee_tab=function(options){
var defaults={
//各种参数,各种熟悉
activeClass:'active',
tabNav:'.lee_ul>li',
tabCon:'.lee_main>div',
eventType:'click'
} var options=$.extend(defaults,options); this.each(function(){
//实现功能的代码
var _this=$(this);
_this.find(options.tabNav).on(options.eventType,function(){
$(this).addClass(options.activeClass).siblings().removeClass(options.activeClass);
var index=$(this).index();
_this.find(options.tabCon).eq(index).show().siblings().hide();
}); }); return this;
alert(this);
} })(jQuery); $(function(){
$('.lee_tab').lee_tab(); $('.lee_tab2').lee_tab({
activeClass:'current',
tabNav:'.lee_ul1>li',
tabCon:'.lee_main1>div',
eventType:'mouseover'
});
})
</script>
</head>
<body>
<div class="lee_tab">
<ul class="lee_ul">
<li class="active">1</li>
<li>2</li>
<li>3</li>
</ul>
<div class="lee_main">
<div class="active">11</div>
<div>22</div>
<div>33</div>
</div>
</div>
<div style="clear:both;"></div>
<div class="lee_tab2">
<ul class="lee_ul1">
<li class="current">1</li>
<li>2</li>
<li>3</li>
</ul>
<div class="lee_main1">
<div class="current">11</div>
<div>22</div>
<div>33</div>
</div>
</div>
</body>
</html>
学会自己写jQuery插件(二)---自己写的tab插件的更多相关文章
- jQuery 插件分享-非常优秀的tab插件tabulous- 学徒帮
干货jquery插件分享之tab. tab 选项卡切换,在日常开发中也是一种比较常见的呈现控件,今天这个tab控件效果还是蛮喜欢的,推荐给大家有用到的场景可以试试: tabulous.js A jQu ...
- 10分钟学会写Jquery插件
最近很多网友说jquery插件是什么啊?怎么写的啊?我不会写啊? 一大堆的问题一时都不知道怎么回答他们,个人认为是网友们把问题复杂化了. 其实就是把一些常用.实用.通用的功能封装起来而以,简单的来 ...
- 学会自己写jQuery插件(一)---基础
第一步:定义插件 $(function() { $.fn.插件名称 = function(options) { var defaults = { Event : "click", ...
- 自己写jquery插件之模版插件高级篇(一)
需求场景 最近项目改版中,发现很多地方有这样一个操作(见下图gif动画演示),很多地方都有用到.这里不讨论它的用户体验怎么样. 仅仅是从复用的角度,如果每个页面都去写text和select元素,两个b ...
- 锋利的jQuery--编写jQuery插件(读书笔记五)[完结篇]
1.表单验证插件Validation 2.表单插件Form 3.动态事件绑定插件livequery 可以为后来的元素绑定事件 类似于jQuery中的live()方法 4.jQuer ...
- 什么?你还不会写JQuery 插件
前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论 ...
- 写JQuery 插件 什么?你还不会写JQuery 插件
http://www.cnblogs.com/Leo_wl/p/3409083.html 前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui ...
- 写jQuery插件
如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论下jq ...
- 用实例一步步教你写Jquery插件
最近Web应用程序中越来越多地用到 了JQuery等Web前端技术.这些技术框架有效地改善了用户的操作体验,同时也提高了开发人员构造丰富客户 端UI的效率.JQuery本身提供了丰富的操作,但是,有时 ...
随机推荐
- Mybatis异常处理之MySQL Connector Java] will not be managed by Spring
很长时间没写后台代码有点生疏了,这不今天又出点小插曲,写个文章记录下. 由于要上传点数据到后台,顺手整了个mybatis+springmvc.在保存数据时出现了异常. Creating a new S ...
- U3D 基础
千里之行,始于足下! 最先执行的方法是:1.(激活时的初始代码)Awake2.Start3.Update(FixUpdate,LateUpdate)4.渲染模块(OnGUI)5.再向后,就是卸载模块( ...
- ubuntu下 pycharm使用andcoda下的tensorflow
在ubuntu中 tensorflow是安装在andconda里的一个虚拟环境中,他就相当于一个容器,将tensorflow的整个环境去模拟隔离出来,因为我们直接使用andconda库去作为pycha ...
- 【转】使用 python IDLE 自带的 debuger 进行调试
IDLE自带了调试器(虽然不怎么使吧). 关于如何在 IDLE 中进行调试网上的教程讲的很模糊,于是自己整理了一下,和大家分享~ 第一步:打开python shell,并在shell中打开debuge ...
- Python并发编程-进程池及异步方式
进程池的基本概念 为什么有进程池的概念 效率问题 每次开启进程,都需要开启属于这个进程的内存空间 寄存器,堆栈 进程过多,操作系统的调度 进程池 python中的 先创建一个属于进程的池子 这个池子指 ...
- Python网络管理模块Paramiko-代码实例
import paramiko import time import sys ip = "10.1.1.1" username = "Admin" passwo ...
- Django+Nginx+uwsgi搭建自己的博客(七)
上一篇博客中介绍了Blogs App的部分后端功能的实现,在这篇博客中,将继续为大家介绍Blogs App中前端功能的实现. 首先来看发布博客功能的前端页面.在blogs/templates/blog ...
- HDU 1213(并查集)
How Many Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- 【推导】【线段树】hdu5929 Basic Data Structure
题意: 维护一个栈,支持以下操作: 从当前栈顶加入一个0或者1: 从当前栈顶弹掉一个数: 将栈顶指针和栈底指针交换: 询问a[top] nand a[top-1] nand ... nand a[bo ...
- 【lct】poj2763 Housewife Wind
题意:给你一棵树,边带权,支持两种操作:修改某条边的权值:查询两点之间的最短路. lct主要实现单点修改和路径和. 修改x结点的值只需将x Splay到其所在辅助树的根,然后修改其值,再maintai ...