jQuery下擴展插件和拓展函數(shù)的寫法(匿名函數(shù)使用的典型例子)
更新時間:2010年10月20日 01:51:05 作者:
這些年,javascript火起來了,主要歸功于AJAX的推廣應(yīng)用,Web2.0的發(fā)展。。。于是,出現(xiàn)了很多的javascript框架。
我選擇了jQuery,最主要是它的思想“write less,do more",因為我是一個挑剔的人,以前寫過的代碼,會時不時翻出來,看看有沒有可以精簡,優(yōu)化的地方。一來是對不斷學習的推動,二來可以將新的思想,技術(shù)應(yīng)用到里面去。
對于jQuery插件的寫法,以前就有介紹過,網(wǎng)上也有很多例子。 這里簡要地進行些寫法,主要是簡寫的說明,見下列代碼:
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript">
//jQuery插件的寫法(需要傳入操作對象)
;(function($)
{
//PI_TestPlugIn為插件名稱,也是插件的操作對象
//為了不會與其它插件名重復,這里我使用PlugIn的縮寫PI_來定義插件對象前綴
$.fn.PI_TestPlugIn=
{
//該插件的基本信息
Info:{
Name: "TestPlugIn",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個對象,具有屬性
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認值
var params = paramObj ? paramObj : new function(){
param1= "1";
param2= "2";
};
return this.Info.Name + ".FunctionWithParamObject";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個變量
FunctionWithParam:function(varparam)
{
//使用參數(shù),是否使用默認值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有參數(shù)的函數(shù)對象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
};
})(jQuery);
//jQuery拓展函數(shù)的寫法(不需要傳入操作對象),即API函數(shù)
;(function($)
{
$.extend({
//PIF_TestExtendFunction為拓展函數(shù)的操作對象
//為了不會與其它插件名重復,這里我使用PlugIn的縮寫PI_來定義插件對象前綴
PIF_TestExtendFunction:
{
//該拓展函數(shù)的基本信息
Info:{
Name: "TestExtendFunction",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有參數(shù)的函數(shù)對象
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認值
var params = paramObj ? paramObj : {
param1: "1",
param2: "2"
};
return this.Info.Name + ".FunctionWithParamObect";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個變量
FunctionWithParam: function (varparam) {
//使用參數(shù),是否使用默認值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有參數(shù)的函數(shù)對象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
}
});
})(jQuery);
$(function ()
{
//測試插件
var params =
{
param1: "3",
param2: "4"
};
alert($(this).PI_TestPlugIn.FunctionWithParams(params));
alert($.PIF_TestExtendFunction.FunctionWithOutParam());
});
</script>
對于jQuery插件的寫法,以前就有介紹過,網(wǎng)上也有很多例子。 這里簡要地進行些寫法,主要是簡寫的說明,見下列代碼:
<script type="text/javascript" src="jquery-1.4.2.js"></script>
復制代碼 代碼如下:
<script type="text/javascript">
//jQuery插件的寫法(需要傳入操作對象)
;(function($)
{
//PI_TestPlugIn為插件名稱,也是插件的操作對象
//為了不會與其它插件名重復,這里我使用PlugIn的縮寫PI_來定義插件對象前綴
$.fn.PI_TestPlugIn=
{
//該插件的基本信息
Info:{
Name: "TestPlugIn",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個對象,具有屬性
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認值
var params = paramObj ? paramObj : new function(){
param1= "1";
param2= "2";
};
return this.Info.Name + ".FunctionWithParamObject";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個變量
FunctionWithParam:function(varparam)
{
//使用參數(shù),是否使用默認值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有參數(shù)的函數(shù)對象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
};
})(jQuery);
//jQuery拓展函數(shù)的寫法(不需要傳入操作對象),即API函數(shù)
;(function($)
{
$.extend({
//PIF_TestExtendFunction為拓展函數(shù)的操作對象
//為了不會與其它插件名重復,這里我使用PlugIn的縮寫PI_來定義插件對象前綴
PIF_TestExtendFunction:
{
//該拓展函數(shù)的基本信息
Info:{
Name: "TestExtendFunction",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有參數(shù)的函數(shù)對象
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認值
var params = paramObj ? paramObj : {
param1: "1",
param2: "2"
};
return this.Info.Name + ".FunctionWithParamObect";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個變量
FunctionWithParam: function (varparam) {
//使用參數(shù),是否使用默認值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有參數(shù)的函數(shù)對象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
}
});
})(jQuery);
$(function ()
{
//測試插件
var params =
{
param1: "3",
param2: "4"
};
alert($(this).PI_TestPlugIn.FunctionWithParams(params));
alert($.PIF_TestExtendFunction.FunctionWithOutParam());
});
</script>
您可能感興趣的文章:
- jquery自定義函數(shù)的多種方法
- jQuery 自定義函數(shù)寫法分享
- jQuery回調(diào)函數(shù)的定義及用法實例
- jQuery.extend 函數(shù)詳解
- jQuery中將函數(shù)賦值給變量的調(diào)用方法
- jquery封裝插件時匿名函數(shù)形參和實參的寫法解釋
- jQuery構(gòu)造函數(shù)init參數(shù)分析
- jQuery實用函數(shù)用法總結(jié)
- jQuery 回調(diào)函數(shù)(callback)的使用和基礎(chǔ)
- jQuery 函數(shù)實例分析【函數(shù)聲明、函數(shù)表達式、匿名函數(shù)等】
相關(guān)文章
基于jQuery實現(xiàn)以手風琴方式展開和折疊導航菜單
這篇文章主要介紹了基于jQuery實現(xiàn)以手風琴方式展開和折疊導航菜單的相關(guān)資料,需要的朋友可以參考下2016-01-01

