jQuery下擴(kuò)展插件和拓展函數(shù)的寫法(匿名函數(shù)使用的典型例子)
更新時(shí)間:2010年10月20日 01:51:05 作者:
這些年,javascript火起來了,主要?dú)w功于AJAX的推廣應(yīng)用,Web2.0的發(fā)展。。。于是,出現(xiàn)了很多的javascript框架。
我選擇了jQuery,最主要是它的思想“write less,do more",因?yàn)槲沂且粋€(gè)挑剔的人,以前寫過的代碼,會(huì)時(shí)不時(shí)翻出來,看看有沒有可以精簡,優(yōu)化的地方。一來是對不斷學(xué)習(xí)的推動(dòng),二來可以將新的思想,技術(shù)應(yīng)用到里面去。
對于jQuery插件的寫法,以前就有介紹過,網(wǎng)上也有很多例子。 這里簡要地進(jìn)行些寫法,主要是簡寫的說明,見下列代碼:
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript">
//jQuery插件的寫法(需要傳入操作對象)
;(function($)
{
//PI_TestPlugIn為插件名稱,也是插件的操作對象
//為了不會(huì)與其它插件名重復(fù),這里我使用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ù)是一個(gè)對象,具有屬性
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認(rèn)值
var params = paramObj ? paramObj : new function(){
param1= "1";
param2= "2";
};
return this.Info.Name + ".FunctionWithParamObject";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個(gè)變量
FunctionWithParam:function(varparam)
{
//使用參數(shù),是否使用默認(rèn)值
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ù)的操作對象
//為了不會(huì)與其它插件名重復(fù),這里我使用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ù),是否使用默認(rèn)值
var params = paramObj ? paramObj : {
param1: "1",
param2: "2"
};
return this.Info.Name + ".FunctionWithParamObect";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個(gè)變量
FunctionWithParam: function (varparam) {
//使用參數(shù),是否使用默認(rèn)值
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)上也有很多例子。 這里簡要地進(jìn)行些寫法,主要是簡寫的說明,見下列代碼:
<script type="text/javascript" src="jquery-1.4.2.js"></script>
復(fù)制代碼 代碼如下:
<script type="text/javascript">
//jQuery插件的寫法(需要傳入操作對象)
;(function($)
{
//PI_TestPlugIn為插件名稱,也是插件的操作對象
//為了不會(huì)與其它插件名重復(fù),這里我使用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ù)是一個(gè)對象,具有屬性
FunctionWithParams:function(paramObj)
{
//使用參數(shù),是否使用默認(rèn)值
var params = paramObj ? paramObj : new function(){
param1= "1";
param2= "2";
};
return this.Info.Name + ".FunctionWithParamObject";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個(gè)變量
FunctionWithParam:function(varparam)
{
//使用參數(shù),是否使用默認(rèn)值
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ù)的操作對象
//為了不會(huì)與其它插件名重復(fù),這里我使用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ù),是否使用默認(rèn)值
var params = paramObj ? paramObj : {
param1: "1",
param2: "2"
};
return this.Info.Name + ".FunctionWithParamObect";
},
//具有參數(shù)的函數(shù)對象,這里參數(shù)是一個(gè)變量
FunctionWithParam: function (varparam) {
//使用參數(shù),是否使用默認(rèn)值
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ù)的定義及用法實(shí)例
- jQuery.extend 函數(shù)詳解
- jQuery中將函數(shù)賦值給變量的調(diào)用方法
- jquery封裝插件時(shí)匿名函數(shù)形參和實(shí)參的寫法解釋
- jQuery構(gòu)造函數(shù)init參數(shù)分析
- jQuery實(shí)用函數(shù)用法總結(jié)
- jQuery 回調(diào)函數(shù)(callback)的使用和基礎(chǔ)
- jQuery 函數(shù)實(shí)例分析【函數(shù)聲明、函數(shù)表達(dá)式、匿名函數(shù)等】
相關(guān)文章
基于jquery的大眾點(diǎn)評(píng),分類導(dǎo)航實(shí)現(xiàn)代碼
基于jquery的大眾點(diǎn)評(píng),分類導(dǎo)航實(shí)現(xiàn)代碼,需要的朋友可以參考下。2011-08-08jQuery EasyUI API 中文文檔 - ProgressBar 進(jìn)度條
jQuery EasyUI API 中文文檔 - ProgressBar 進(jìn)度條,使用jQuery EasyUI的朋友可以參考下。2011-09-09IE中的File域無法清空使用jQuery重設(shè)File域
IE中的File域無法清空,可能你看到的是已經(jīng)沒有值了,其實(shí)它還是存在的,下面有個(gè)不錯(cuò)示例,大家可以參考下2014-04-04jQuery實(shí)現(xiàn)的仿select功能代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)的仿select功能代碼,使用jquery.select.js插件實(shí)現(xiàn)select選擇功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08JavaScript實(shí)現(xiàn)的彈出遮罩層特效經(jīng)典示例【基于jQuery】
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的彈出遮罩層特效,結(jié)合實(shí)例形式分析了基于jQuery實(shí)現(xiàn)的頁面元素與屬性動(dòng)態(tài)操作相關(guān)使用技巧,需要的朋友可以參考下2019-07-07