jquery拓展插件开发
學習參考網址整理:
http://blog.csdn.net/chenxi1025/article/details/52222327
http://www.cnblogs.com/ellisonDon/archive/2012/08/12/2634503.html
jquery插件的開發包括兩種:
1、類級別插件開發:給jquery類添加類方法,可理解為添加靜態方法;例如$.AjAX()函數;
//定義全局函數
$.foo = function(){};
$.bar = function(){};
//$.foo();$bar();
//使用extend定義全局函數
$.extend({
foo : function(){
},
bar : function(){
}
});
//$.foo();$bar();
//使用命名空間定義全局函數
$.plugin = {
foo : function(){
}
}
//接受參數控制插件的行為
(function($){
$.popShow = function(options){
var default = {
id : "",
url : "",
title : ""
};
var settings = $.extend({},default,options);//利用extend把default的對象的方法屬性整合到options中;
//此處不需要this.each(function(){});
?//執行代碼
var _id = settings.id,
_url = settings.url,
? _title = settings.title;
$(_id).closet(".popWrap").hide();?
//...
};
//調用方法:$.popShow({
id : ".close",
url : "",
title : "編輯"
});
})(jQuery);
//$.plugin.foo();
2、對象級別插件
//形式一
(function($){
$.fn.foo = function(){};
})(jQuery);
$.fn.foo = function(){};
//形式二
(function($){
$.fn.extend({
foo : funciton(){};
})
})(jQuery);
//接受參數控制插件的行為
(function($){
$.fn.popShow = function(options){
var defaults = { //配置項
url : "",
title : ""
};
var settings = $.extend({},defaults,options);//?這個是利用extend方法把?defaults對象的方法屬性全部整合到?options里
this.each(function(){
//$.fn.abc()這種實例化方法才需要有this.each循環給多個相同類名的元素綁定此方法里面的事件;// $("div").abc();
var tag = ?$(this); ?//調用方法時為$("#div").popShow(); 此處的$(this)相當于$("#div");
//執行代碼
return this;
});
};
})(jQuery);
?
轉載于:https://www.cnblogs.com/ss977/p/6593054.html
總結
以上是生活随笔為你收集整理的jquery拓展插件开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Numpy基础学习与总结
- 下一篇: Linux入门之运维(1) 系统监控