更正 jQuery 插件中的扩展用户选项

Correct extend user option in jQuery plugin

有 jQuery 插件示例,用户可以在其中设置自己的选项

(function( $ ){

  var options = {
    opt1: val1,
    opt2: val2,
    opt3: val3
  };

  var methods = {
    init : function( options ) { 
      var option = $.extend({
            opt1: val11
        }, options);
    },
    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 ); 

在这种情况下,我如何在其他方法(显示、隐藏等)中调用选项?这是正确的代码?

由于 longest options 变量定义在 methods 变量之前,您可以使用点符号来获取选项。 (例如 options.opt1)。