Skip to content
Permalink
Browse files

spinner: fixed rounding error when stepping=0.3

  • Loading branch information
Ca-Phun Ung
Ca-Phun Ung committed Aug 19, 2008
1 parent c0147da commit 68f18e1c2dcfdc1386420e3335af7f99e7f2d205
Showing with 4 additions and 3 deletions.
  1. +4 −3 ui/ui.spinner.js
@@ -16,7 +16,7 @@ $.widget('ui.spinner', {
_init: function() {

// check for decimals in steppinng and set _decimals as internal (needs cleaning up)
var decimals = 0;
this._decimals = 0;
if (this.options.stepping.toString().indexOf('.') != -1) {
var s = this.options.stepping.toString();
this._decimals = s.slice(s.indexOf('.')+1, s.length).length;
@@ -267,11 +267,12 @@ $.extend($.ui.spinner, {
return (num !== Math.abs(num) ? '-' : '') + sym + this.round(Math.abs(num), 2);
},
round: function(num, dec) {
var s = Math.round(parseFloat(num)*Math.pow(10, dec)) / Math.pow(10, dec); // round off weird decimals
if (dec > 0) {
var s = num + ((num.toString().indexOf('.') == -1) ? '.' : '') + '0000000001';
s = s + ((s.toString().indexOf('.') == -1) ? '.' : '') + '0000000001';
s = s.substr(0, s.indexOf('.')+1+dec);
} else {
var s = Math.round(num);
var s = Math.round(s);
}
return s;
}

0 comments on commit 68f18e1

Please sign in to comment.
You can’t perform that action at this time.