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插件,我这里看下插件使用时的代码:
(代码二)
结合以上两段代码进行说明
$("#tabtitle")表示你要使用在哪个地方,稍微了解jquery的童鞋都知道是什么意思了,不多介绍了, .tab 就是这个插件我们定义的函数名了,对照(代码一)中的$.fn.tab中的tab。 .tab({eventname:"mousemove",sedcss:"sed"}); 中eventname和sedcss就是(代码一)var defaults ={};中定义的属性值了。如果我们不需要改变属性值,那么我们就使用默认的属性值,那么插件就应该这样使用
最后附上全部的页面代码:
tab test //这里的ID对应$("#tabtitle")中的ID,LI的ID分别是尾部添加数字 asdfasfd asdfasfd asdfasfd asdfasfd asdfasfd
//这里的ID对ul中的ID,ID分别是尾部添加数字和"info"
000000
111111
22222
33333
44444
此文重点在说明jquery插件的制作方法,示例中代码还有要优化的地方,请见谅
源码打包下载
Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn