很难理解您要达到的目标,但是您当前尝试的方式存在一些问题。您试图在定义defaults.selector
对象本身 ( ) 之前设置对象的属性 ( ) defaults
。
为了完成它,最简单的方法是将minHeight
' 的定义拉到另一行。你也可能想看看 jQuery 的$.extend
:
(function ($) {
$.fn.something = function (options) {
var defaults = {
selector: '.selector',
speed: 200
}
defaults.minHeight = $(defaults.selector).height();
console.log(defaults.minHeight);
// extend() will set the values of 'options' that are empty with default's
var options = $.extend({}, defaults, options);
// options.minHeight will be the height of '.selector' if no options are
// given, or 'minHeight' if one is given as parameter
console.log(options.minHeight);
};
})(jQuery);
// testing code so you get what I mean
$().something({minHeight: 10});
$().something();
请参阅上面的代码(打开控制台)。