JQuery插件開發(fā)示例代碼
更新時間:2013年11月06日 17:05:33 作者:
JQuery插件開發(fā)示例代碼
JQuery 插件開發(fā):
類級別開發(fā),開發(fā)新的全局函數(shù)
對象級別開發(fā),給Jquery對象開發(fā)新方法
一、類級別開發(fā) -定義全局方法
復制代碼 代碼如下:
jQuery.foo = function() {
alert('This is a test.');
};
采用命名空間,可以避免命名空間內函數(shù)的沖突。
復制代碼 代碼如下:
jQuery.apollo={
fun1:function(){
console.log('fun1');
},
fun2:function(){
console.log('fun2');
}
}
二、對象級別開發(fā) -定義jQuery對象方法
復制代碼 代碼如下:
(function($) {
$.fn.pluginName = function() {
};
})(jQuery);
//插件通過這樣被調用:
$('#myDiv').pluginName();
接受options參數(shù)以控制插件的行為
復制代碼 代碼如下:
(function($){
$.fn.fun2=function(option){
var defaultOption={
param1:'param1',
param2:'param2'
}
$.extend(defaultOption,option);
console.log(defaultOption);
}
})(jQuery);
$(function(){
//通過這樣調用
$("body").fun2({
param1:'new Param1'
});
});
保持私有函數(shù)的私有性
復制代碼 代碼如下:
(function($) {
// plugin definition
$.fn.hilight = function(options) {
debug(this);
// ...
};
// private function for debugging
//“debug”方法不能從外部閉包進入,因此對于我們的實現(xiàn)是私有的。
function debug($obj) {
if (window.console && window.console.log)
window.console.log('hilight selection count: ' + $obj.size());
};
// ...
})(jQuery);

