jquery tab插件制作实现代码


Posted in Javascript onJune 22, 2010

jquery插件的基本格式:

(function($){ 
$.fn.tab = function(options){//$.fn后面的tab是这个插件的函数名称。可以更具自己喜好进行修改 
var defaults = { 
//相关属性设置 
} 
var options = $.extend(defaults, options); 
this.each(function(){ 
//实现的功能设置 }); 
}; 
})(jQuery);

我这里是做一个tab的插件,我来完善以上代码
(function($){ 
$.fn.tab = function(options){ 
var defaults = { 
eventname:"click",//触发事件,click为点击,mousemove为鼠标移动 
titlekeyid:"tabtitle",//切换的ID 
sedcss:"sed",//选中时的CSS 
nosedcss:"nosed" //未选中时的CSS 
} 
var options = $.extend(defaults, options); 
this.each(function(){ 
var tab=$(this); 
//绑定事件 
$(tab).find("li").bind(options.eventname,function(){ 
$("#"+options.titlekeyid).find("li").attr("class", options.nosedcss); 
$(this).attr("class", options.sedcss); 
$("#"+options.titlekeyid+"info").find("div").css("display", "none"); 
$("#"+$(this).attr("id")+"info").css("display", "block"); 
//个人JS能力还是有限,感觉代码写的不好 
}); 
}); 
}; 
})(jQuery);

我想大家都用过一些jquery插件,我这里看下插件使用时的代码:
(代码二)
<script type="text/javascript"> 
$().ready(function(){ 
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"}); 
}) 
</script>

结合以上两段代码进行说明
$("#tabtitle")表示你要使用在哪个地方,稍微了解jquery的童鞋都知道是什么意思了,不多介绍了, 
.tab 就是这个插件我们定义的函数名了,对照(代码一)中的$.fn.tab中的tab。 
.tab({eventname:"mousemove",sedcss:"sed"}); 中eventname和sedcss就是(代码一)var defaults ={};中定义的属性值了。如果我们不需要改变属性值,那么我们就使用默认的属性值,那么插件就应该这样使用 
<script type="text/javascript"> 
$().ready(function(){ 
$("#tabtitle").tab(); 
}) 
</script>

最后附上全部的页面代码:
<html> 
<head> 
<title>tab test</title> 
<script type="text/javascript" src="jquery.js"> 
</script> 
<script type="text/javascript" src="jquery.joyleetab.js"> 
</script> 
<script type="text/javascript"> 
$().ready(function(){ 
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"}); 
}) 
</script> 
<link href="css.css" rel="stylesheet" type="text/css"> 
</head> 
<body> 
<ul id="tabtitle">//这里的ID对应$("#tabtitle")中的ID,LI的ID分别是尾部添加数字 
<li id="tabtitle1" class="sed">asdfasfd</li> 
<li id="tabtitle2">asdfasfd</li> 
<li id="tabtitle3">asdfasfd</li> 
<li id="tabtitle4">asdfasfd</li> 
<li id="tabtitle5">asdfasfd</li> 
</ul> 
<div id="tabtitleinfo">//这里的ID对ul中的ID,ID分别是尾部添加数字和"info" 
<div id="tabtitle1info" >000000</div> 
<div id="tabtitle2info" style=" display:none">111111</div> 
<div id="tabtitle3info" style=" display:none">22222</div> 
<div id="tabtitle4info" style=" display:none">33333</div> 
<div id="tabtitle5info" style=" display:none">44444</div> 
</div> 
</body> 
</html>

此文重点在说明jquery插件的制作方法,示例中代码还有要优化的地方,请见谅
源码打包下载
Javascript 相关文章推荐
JavaScript中匿名、命名函数的性能测试
Sep 04 Javascript
javascript学习笔记(二)数组和对象部分
Sep 30 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
Dec 04 Javascript
很不错的两款Bootstrap Icon图标选择组件
Jan 28 Javascript
js实现瀑布流效果(自动生成新的内容)
Mar 16 Javascript
基于Vue实现支持按周切换的日历
Sep 24 Javascript
微信小程序返回多级页面的实现方法
Oct 27 Javascript
初探js和简单隐藏效果的实例
Nov 23 Javascript
使用pkg打包Node.js应用的方法步骤
Oct 19 Javascript
快速对接payjq的个人微信支付接口过程解析
Aug 15 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
Dec 17 Javascript
js实现全选和全不选
Jul 28 Javascript
jquery多浏览器捕捉回车事件代码
Jun 22 #Javascript
浏览器脚本兼容 文本框中,回车键触发事件的兼容
Jun 21 #Javascript
在IE6下发生Internet Explorer cannot open the Internet site错误
Jun 21 #Javascript
复制Input内容的js代码_支持所有浏览器,修正了Firefox3.5以上的问题
Jun 21 #Javascript
js操作时间(年-月-日 时-分-秒 星期几)
Jun 20 #Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
Jun 19 #Javascript
一段批量给页面上的控件赋值js
Jun 19 #Javascript
You might like
PHP中一个控制字符串输出的函数
2006/10/09 PHP
PHP+MYSQL 出现乱码的解决方法
2008/08/08 PHP
php处理restful请求的路由类分享
2014/02/27 PHP
php文件夹的创建与删除方法
2015/01/24 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
为超链接加上disabled后的故事
2010/12/10 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
jquery简单实现带渐显效果的选项卡菜单代码
2015/09/01 Javascript
Nodejs下DNS缓存问题浅析
2016/11/16 NodeJs
Angular.js中ng-include用法及多标签页面的实现方式详解
2017/05/07 Javascript
jquery单击文字或图片内容放大并居中显示
2017/06/23 jQuery
详解关于react-redux中的connect用法介绍及原理解析
2017/09/11 Javascript
详解vue axios中文文档
2017/09/12 Javascript
JS中的一些常用的函数式编程术语
2019/06/15 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
[42:25]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第三场
2018/04/06 DOTA
[47:18]完美世界DOTA2联赛循环赛 IO vs FTD BO2第一场 11.05
2020/11/06 DOTA
python实现网页链接提取的方法分享
2014/02/25 Python
Python编程实现控制cmd命令行显示颜色的方法示例
2017/08/14 Python
Django中ORM表的创建和增删改查方法示例
2017/11/15 Python
python绘制双柱形图代码实例
2017/12/14 Python
python 文件查找及内容匹配方法
2018/10/25 Python
django解决订单并发问题【推荐】
2019/07/31 Python
python Cartopy的基础使用详解
2020/11/01 Python
Spartoo英国:欧洲最大的网上鞋店
2016/09/13 全球购物
造型师求职自荐信
2013/09/27 职场文书
优秀大学生的自我评价
2014/01/16 职场文书
我的动漫时代的创业计划书范文
2014/01/27 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
2014年平安夜寄语
2014/12/08 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
2019七夕节祝福语36句,快来收藏吧
2019/08/06 职场文书