From: Scott González Date: Sat, 6 Aug 2011 16:58:37 +0000 (-0400) Subject: Spinner: Use _getCreateOptions() instead of custom _markupOptions(). X-Git-Tag: 1.9m6~60^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=refs%2Fpull%2F424%2Fhead;p=jquery-ui.git Spinner: Use _getCreateOptions() instead of custom _markupOptions(). --- diff --git a/tests/unit/spinner/spinner_defaults.js b/tests/unit/spinner/spinner_defaults.js index c9a7d5f62..078bd36c6 100644 --- a/tests/unit/spinner/spinner_defaults.js +++ b/tests/unit/spinner/spinner_defaults.js @@ -2,11 +2,11 @@ commonWidgetTests( "spinner", { defaults: { disabled: false, incremental: true, - max: null, - min: null, + max: Number.MAX_VALUE, + min: -Number.MAX_VALUE, numberFormat: null, page: 10, - step: null, + step: 1, value: null, // callbacks diff --git a/ui/jquery.ui.spinner.js b/ui/jquery.ui.spinner.js index 1b55d8374..ed3b789c9 100644 --- a/ui/jquery.ui.spinner.js +++ b/ui/jquery.ui.spinner.js @@ -19,40 +19,33 @@ $.widget( "ui.spinner", { widgetEventPrefix: "spin", options: { incremental: true, - max: null, - min: null, + max: Number.MAX_VALUE, + min: -Number.MAX_VALUE, numberFormat: null, page: 10, - step: null, + step: 1, value: null }, _create: function() { - this._markupOptions(); + this.value( this.options.value !== null ? this.options.value : this.element.val() || 0 ); this._draw(); this._mousewheel(); this._aria(); }, - // TODO: should we use _getCreateOptions() now? - // would increase overhead of init when options are specified, - // but would move the defaults to the right location - // and use our API the way it's meant to be used - _markupOptions: function() { - var that = this; - $.each({ - min: -Number.MAX_VALUE, - max: Number.MAX_VALUE, - step: 1 - }, function( attr, defaultValue ) { - if ( that.options[ attr ] === null ) { - var value = that.element.attr( attr ); - that.options[ attr ] = typeof value === "string" && value.length > 0 ? - that._parse( value ) : - defaultValue; + _getCreateOptions: function() { + var options = {}, + element = this.element; + + $.each( [ "min", "max", "step" ], function( i, option ) { + var value = element.attr( option ); + if ( value !== undefined ) { + options[ option ] = value; } }); - this.value( this.options.value !== null ? this.options.value : this.element.val() || 0 ); + + return options; }, _draw: function() {