会员转向未定义

时间:2012-07-07 16:34:34

标签: javascript jquery

我开发了一个jQuery插件,它有默认选项:

$.fn.incromentor.defaults = {
   max : 65355,
   min : 0
};

在插件的初始化中,我使用$.extend

将用户选项与插件默认选项合并
function init( $elm, options )
{
    this.$element = $elm;
    this.options = $.extend( {}, $.fn.incromentor.defaults, options ); 
}

问题是,如果用户将minmax设置为0,该属性将变为未定义!
为什么这样,我怎么能存储一个简单的0?

这里有一个jsFiddle:http://jsfiddle.net/KDXa6/2/

修改
在JSLint中删除代码之后,错误消失了,所以我怀疑在输入时出现了一个模糊的错误。

1 个答案:

答案 0 :(得分:0)

$。fn.incromentor.defaults = {}将覆盖您的默认选项,因此其他内容(例如more_text,less_text)将变为未定义。您的用户应将其选项传递给构造函数,例如

$('#myel').Incrementor({ max : 65355, min : 0});

-

$ this to $(this)http://jsfiddle.net/KDXa6/1/