这就是我通常实现插件的方式:
(function($){
$.fn.plugingName = function(inSettings){
//code that extands settings with default
return this.each(function(){
new PluginClass($(this), settings);
});
}
PluginClass = function(jElem, settings){
//here I usually put variable and function in such a way to compose better
var events = {
onMouseUp : function(){
//some actions
},
onMouseMove : function(event){
//some actions
},
//etc.
},
draw = {
drawGrid : function(){//some actions},
//etc.
},
//etc.
/*****************************
* This is a place of question
****************************/
}
})(jQuery);我只想知道是否有一种模式来将我上面描述的算法与声明部分分开。有些东西喜欢把你所有算法部分都放在里面
function main(){
}();如果有更好的方法来区分算法的主要部分。我希望我把一切都描述清楚了。
可以使用表示代码进行的所有其他改进也是可以理解的。
发布于 2011-07-23 22:47:30
你的意思是把function main()放在大包装function($){ ...的外面?但这并不是我们想要的,包装函数的存在是为了避免覆盖全局名称空间。这是非常干净的设计,也是我们所需要的。所以不用担心使用这个标准模式。
https://stackoverflow.com/questions/6787633
复制相似问题