jquery easyui 插件开发

(function($) {
/**
* 插件定义
*/
$.fn.resquery = function(options, param) {
if (typeof options == "string") {
return $.fn.resquery.methods[options](this, param);
};

options = options || {};

return this.each(function(){
var id = $(this).attr("id");
var opts ;
var data = $.data(this, "resquery");
if (data) {
opts = $.extend(data.options, options);
} else {
opts = $.extend( {}, $.fn.resquery.defaults,$.fn.resquery.parseOptions(this), options);
data = $.data(this, "resquery", {
options : opts
});
}

//你的插件。。。
//如果在这里动态的生成了 easyui 的控件,html 写到页面上后是不能渲染成 easyui 组件的,需要手动调用
//    $.parser.parse(你定义的html); // parse 必须渲染父节点,不能渲染节点本身

});
};

/**
* 默认值配置
*/
$.fn.resquery.defaults = {//默认属性定义
resQueryUrl : 'XXXXX',
fit    : true,
border    : false,
layout    : 'west'
};

/**
* 对外暴露的方法
*/
$.fn.resquery.methods = {
onResTreeQuery : function(jq,param){
return jq.each(function(){
addTabs(this,param);
});

}
};

/**
* class声明式定义属性data-options转化为options
* @param {Object} target DOM对象
* @return {TypeName} 
*/
$.fn.resquery.parseOptions = function(target) {
var t = $(target);
return $.extend({},$.parser.parseOptions(target,["resQueryUrl"]));//解析 data-options 中的初始化参数
};

function addTabs(jq,param){
//方法定义
}

$.parser.plugins.push('resquery');//将自定义的插件加入 easyui 的插件组

})(jQuery);

 

转自:http://my.oschina.net/gougouqihao/blog/182318

posted @ 2016-06-19 08:51  losesea  阅读(745)  评论(0编辑  收藏  举报