源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

自己动手开发jQuery插件教程

  • 时间:2020-02-14 15:48 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:自己动手开发jQuery插件教程
因为工作需要,所以这几天琢磨了一下关于jQuery插件开发的问题,经过一天鏖战,终于完成自己动手做的第一个jQuery插件,对于俺这种见了css就头痛的人来说,一天时间8小时,保守估计有5个小时在弄css(我css文盲级别,形容得还不够贴切,如果说文盲不会写字,只会说话,那我是连话都不会说的级别。),好了,废话少说,切入正题。 [b]首先要了解jQuery插件开发分两种,1.类级别的插件开发。2.对象级别插件开发。 [/b] 什么? 你居然问什么是类级别和什么是对象级别? 类级别你可以理解为拓展jquery类,最简单的$.post(...); 对象级别则可以理解为基于对象的拓展,如$("#Me").fuck(...); 这里这个fuck呢,就是基于对象的拓展了。点到即止,想深入的童鞋请花RMB买书Or网上查资料,书上比俺介绍得更清楚。so...Next... 至于您要写一个什么东东呢?就轮到前面提到的类级别和对象级别的造型登场了,因为这写法大千世界无奇不有,千奇百怪,各有千秋,写法规范也不统一,俺就按俺觉得最简便的方法写了,Hava a Look!
[url=tabs.css]<script type="text/javascript"> $(function () { $("#mytabs").tabs(); }); </script> </head> <body> <!--tabs示例--> <div id="mytabs"> <!--选项卡区域--> <ul> <li><a href="#tabs1">选项1</a></li> <li><a href="#tabs2">选项2</a></li> <li><a href="#tabs3">选项3</a></li> </ul> <!--面板区域--> <div id="tabs1">11111</div> <div id="tabs2">22222</div> <div id="tabs3">33333</div> </div> </body> </html>
再上插件源码: /* tabs面板插件,版本1.0(2011.08.24) 用法:$("#myDiv").tabs({switchingMode:"click"}); 参数解释:switchingMode是面板切换的模式,如switchingMode:"mouseover"则鼠标移动至选项卡切换面板,默认为click。 整体tabs骨架不变,依然是常用的结构如下: 样式:此样式为默认无任何效果样式,可根据需要修改插件样式。
[u]复制代码[/u] 代码如下:
*/ ; (function ($) { $.fn.tabs = function (options) { var defualts = { switchingMode: "click" }; var opts = $.extend({}, defualts, options); var obj = $(this); var clickIndex = 0; obj.addClass("tabsDiv"); $("ul li:first", obj).addClass("tabsSeletedLi"); $("ul li", obj).not(":first").addClass("tabsUnSeletedLi"); $("div", obj).not(":first").hide(); $("ul li", obj).bind(opts.switchingMode, function () { if (clickIndex != $("ul li", obj).index($(this))) { clickIndex = $("ul li", obj).index($(this)); $(".tabsSeletedLi", obj).removeClass("tabsSeletedLi").addClass("tabsUnSeletedLi"); $(this).removeClass("tabsUnSeletedLi").addClass("tabsSeletedLi"); var divid = $("a", $(this)).attr("href").substr(1); $("div", obj).hide(); $("#" + divid, obj).show(); }; }); }; })(jQuery);
接下来上插件样式:
[u]复制代码[/u] 代码如下:
body{background-color: black;} .tabsDiv{width: 500px;height: 350px;margin-top: 0px;margin-left: 0px;} .tabsDiv ul{width: 500px;height: 20px;list-style: none;background-color: black;margin-bottom: 0px;margin: 0px;padding: 0px;} .tabsDiv div{width: 500px;height: 330px;background-color: white;} .tabsSeletedLi{width: 100px;height: 20px;background-color: white;float: left;text-align: center;} .tabsSeletedLi a{width: 100px;height: 20px;color: black;} .tabsUnSeletedLi{width: 100px;height: 20px;background-color: black;float: left;text-align: center;} .tabsUnSeletedLi a{width: 100px;height: 20px;color: white;}
最终效果图,你懂的: [center][img]http://files.jb51.net/upload/201108/20110825221603929.jpg[/img] [/center] [center][img]http://files.jb51.net/upload/201108/20110825221603252.jpg[/img] [/center] [center][img]http://files.jb51.net/upload/201108/20110825221603496.jpg[/img] [/center]原文:http://www.cnblogs.com/JohnStart/archive/2011/08/24/jQueryPlugin.html
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部