那么首先我们来简单的看一下最正统的 jQuery 插件定义方式:

(function ($) {
$.fn.插件名 = function (settings) {
//默认参数
var defaultSettings = { } /* 合并默认参数和用户自定义参数 */ settings = $.extend(defaultSettings, settings); return this.each(function () { //代码 }); //插件在元素内多次出现 } })(jQuery);

先来看模板中的第一行代码(当然我们要把这一行代码的后半部分给揪出来一起看,不然第一行就完全无意义了):

(function ($) {

})(jQuery);

这行代码其实是用于创建一个匿名函数。如果你对匿名函数和闭包不了解,将会对这种代码非常疑惑,那么强烈建议您阅读JavaScript中的匿名函数及函数的闭包这篇文章。

jQuery 的继承方法 $.extend —— $.extend 在jQuery 插件开发中有个很重要的作用,就是用于合并参数。

$.fn.tip = function (settings) {
var defaultSettings = {
//颜色
color: 'yellow',
//延迟
timeout: 200 }
/* 合并默认参数和用户自定义参数 */
settings = $.extend(defaultSettings, settings);
alert(settings.input);
}

jQuery 插件定义第二种方式:

(function ($) {
//插件定义--更换名字
$.fn.tabpanel = function (method) {
var methods = $.fn.tabpanel.methods;
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || !method) {
return methods.init.apply(this, arguments);
} else { }
}
//支持的方法
$.fn.tabpanel.methods =
{
//初始化
init: function (p_options) {
tabpanelBind(p_options, this);
},
add: function (p_options) {
addTab(p_options, this);
tabpanelBind(p_options, this);
// debugger
} }
function add(p_options) {
var _defaults = {
id: ""
}

    //内部实现略.........
return _index;
}

})(jQuery); 调用  $("#team").tabpanel('add',"");

最新文章

  1. php高版本不再使用mysql_connect()来连接数据库
  2. 使用Newtonsoft JsonConvert反序列化Json数据到DataTable
  3. struts2中各种值栈问题
  4. C# - MVC
  5. C# RSA和Java RSA互通
  6. LightOJ 1197 Help Hanzo 素数筛
  7. springmvc工作原理和环境搭建
  8. perl的INC
  9. python基础入门教程《python入门经典》
  10. windows平台python 2.7环境编译安装zbarlight
  11. SQL语句查询时防止SQL语句注入的方法之一
  12. C# 离线人脸识别Demo 使用ArcFace 2.0开发完成
  13. 文本分类实战(六)—— RCNN模型
  14. Go获取美元实时汇率
  15. 【noip模拟赛7】上网 线性dp
  16. centos7 mail
  17. Spring 手动 提交事务
  18. 如何判断可见字符 Unicode
  19. AngularJs(SPA)单页面SEO以及百度统计应用(下)
  20. SVN 取消版本控制并添加至忽略列表

热门文章

  1. 十步让你调试mvc源码
  2. webform中的Eval的使用
  3. 洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib
  4. 感受机房管理化繁为简-新款KVM使用心得
  5. [Nginx 1] Nginx简介
  6. 开源项目:windows下使用MinGW+msys编译ffmpeg
  7. 从汇编层面深度剖析C++虚函数
  8. IE样式兼容写法
  9. SAS 5/iR Adapter 驱动下载
  10. hdu2444