在jQuery plugin tutorial中,show(),hide()或update()等其他方法如何访问init()中传递的选项?在init()中处理它的正确方法是什么,以便其他方法可以访问它?
(function( $ ){
var methods = {
init : function( options ) { // THIS },
show : function( ) { // IS },
hide : function( ) { // GOOD },
update : function( content ) { // !!! }
};
$.fn.tooltip = function( method ) {
// Method calling logic
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 );
} else {
$.error( 'Method ' + method + ' does not exist on jQuery.tooltip' );
}
};
})( jQuery );
答案 0 :(得分:0)
在我的插件中,我总是使用以下方式访问选项:
this.options
但是......我使用了不同的方法......
(function ($) {
$.widget("my.plugin", {
options: {
op1: "op1"
},
_init: function () {
},
_create: function () {
},
show: function () {
}
});
})(jQuery);