ошибка округления длинного числа noUiSlider

Я инициализирую noUiSlider с помощью data

var settings = {
  connect: "lower",
  range: {
    max: 87654567890,
    min: 0
  },
  start: 30679098762,
  step: 1
}

после инициализации значение слайдера 30679098761.50 почему?

демо здесь -https://jsfiddle.net/serGlazkov/yrppsmvo/5/

2 ответов


большие числа не могут быть точно представлены на ширине ползунков (скажем, 300px не может быть разумно разделено на 87654567890).

решение использует небольшой диапазон чисел и выполняет поиск в массиве, чтобы найти большое значение:

var range = ['x','x2','x3',...];

bigValueSlider.noUiSlider.on('update', function ( values, handle ) {
    bigValueSpan.innerHTML = range[values[handle]];
});

посмотреть этот пример в документации как с этим бороться.


Это ошибка noUiSlider, исправлена в версии 8.4.0