Я использую этот код пользовательского интерфейса jQuery для логарифмического слайдера:
var minVal = 10;
var maxVal = 100;
$("#slider").slider({
range: true,
min: minVal,
max: maxVal / 2,
values: [minVal, maxVal],
slide: function(event, ui) {
$("#amount_min").val(Number(expon(ui.values[0], minVal, maxVal)).toFixed(0));
$("#amount_max").val(Number(expon(ui.values[1], minVal, maxVal)).toFixed(0));
}
});
Функция экспонента
:
function expon(val, min,max) {
var minv = Math.log(min);
var maxv = Math.log(max);
max = max / 2;
// calculate adjustment factor
var scale = (maxv - minv) / (max - min);
return Math.exp(minv + scale * (val - min));
}
#amount_min
и #amount_max
- это элементы ввода HTML. Приведенный выше код отлично работает, чтобы получать значения из ползунка и помещать их в элементы ввода.
Но теперь мне нужна функция, противоположная expon ()
- для изменения ползунка, когда я изменяю значения входов. Кто-нибудь может мне с этим помочь?