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 相关文章推荐
将查询条件的input、select清空
Jan 14 Javascript
javascript实现根据3原色制作颜色选择器的方法
Jul 17 Javascript
Bootstrap每天必学之按钮(Button)插件
Apr 25 Javascript
AngularJS学习第一篇 AngularJS基础知识
Feb 13 Javascript
微信小程序实现顶部下拉菜单栏
Nov 04 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
Dec 03 Javascript
Bootstrap 实现表格样式、表单布局的实例代码
Dec 09 Javascript
ES6 如何改变JS内置行为的代理与反射
Feb 11 Javascript
vue实现员工信息录入功能
Jun 11 Javascript
Node.js path模块,获取文件后缀名操作
Nov 07 Javascript
一篇文章看懂JavaScript中的回调
Jan 05 Javascript
vue项目中的支付功能实现(微信支付和支付宝支付)
Feb 18 Vue.js
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中常用字符串处理代码片段整理
2011/11/07 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
2014/05/04 PHP
php微信公众号开发之图片回复
2018/10/20 PHP
js实现ASP分页函数 HTML分页函数
2006/09/22 Javascript
javascript 新浪背投广告实现代码
2009/07/07 Javascript
javascript右下角弹层及自动隐藏(自己编写)
2013/11/20 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
输入框过滤非数字的js代码
2014/09/18 Javascript
JS仿百度自动下拉框模糊匹配提示
2016/07/25 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
JavaScript 控制字体大小设置的方法
2016/11/23 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
JS中的const命令你真懂它吗
2020/03/08 Javascript
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
Python实现合并两个有序链表的方法示例
2019/01/31 Python
python使用for循环计算0-100的整数的和方法
2019/02/01 Python
Python字符串格式化输出代码实例
2019/11/22 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
基于Django实现日志记录报错信息
2019/12/17 Python
python使用gdal对shp读取,新建和更新的实例
2020/03/10 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
解决keras使用cov1D函数的输入问题
2020/06/29 Python
通过代码实例了解Python异常本质
2020/09/16 Python
乌克兰电子和家用电器商店:Foxtrot
2019/07/23 全球购物
2014年教师节演讲稿
2014/09/03 职场文书
乡镇务虚会发言材料
2014/10/20 职场文书
2014年敬老院工作总结
2014/12/08 职场文书
优秀团支部申报材料
2014/12/26 职场文书
普宁寺导游词
2015/02/04 职场文书
2015年幼儿园卫生保健工作总结
2015/05/12 职场文书
《艾尔登法环》Boss腐烂树灵很有可能是《黑暗之魂3》的一个废案
2022/04/11 其他游戏
Python matplotlib多个子图绘制整合
2022/04/13 Python
利用Python实现模拟登录知乎
2022/05/25 Python