“官方”文档http://docs.jquery.com/Plugins/Authoring#Namespacing声明方法应该添加到 jQuery 插件中,如下所示。我还没有看到这种设计模式经常实现。看起来如果其他插件使用 var 方法,可能会有冲突。这真的是首选方法,还是我应该采取不同的做法?
(function( $ ){
var methods = {
method1: function( options ) {},
method2: function( ) {}
};
$.fn.tooltip = function( method ) {
if ( methods[method] ) {
return methods[ method ].apply( this, Array.prototype.slice.call( arguments, 1 ));
} else if ( typeof method === 'object' || ! method ) {
return methods.init.apply( this, arguments );
}
};
})( jQuery );