Я использую rangeslider.js
, чтобы скрыть или показать изображения в зависимости от того, находится ли значение в ведре (на данный момент, выше или ниже 1500), и я получаю странное ответ.rangelider.js - не потянув правильное значение в jquery
Мой слайдер настроен так:
<input id="sliderone"
type="range"
min="0" // default 0
max="3000" // default 100
step="1" // default 1
value="300" // default min + (max-min)/2
>
Мой браузер как этот
var sliders = document.querySelectorAll('input[type=range]');
var result = document.getElementById('js-result');
var values = getValues(sliders);
$(sliders).rangeslider({
polyfill: false
}).on('change', function() {
var values = getValues(sliders);
updateResult(result, values);
console.log(values);
});
$(sliders).rangeslider({
polyfill: false
}).on('change', function() {
var values = getValues(sliders);
updateResult(result, values);
console.log(values);
});
updateResult(result, values);
function newchangepic1() {
var newvalue = values[0];
console.log(newvalue);
if (newvalue < 1500) {
$(".img-one").attr("src","images/travel.png");
} else if (newvalue > 1500) {
$(".img-one").attr("src","images/plant-color.png");
}
}
function newchangepic3() {
var newvalue = values[1];
console.log(newvalue);
if (newvalue < 1500) {
$(".img-two").attr("src","images/hdb.png");
} else if (newvalue > 1500) {
$(".img-two").attr("src","images/plane.png");
}
}
Когда я делаю
console.log(values);
Он печатает мой массив, как ожидается, обновление с каждое движение.
var newvalue = values[0];
console.log(newvalue);
Но когда я пытаюсь прочитать одно из значений внутри массива я получаю 300. начальное значение я устанавливаю в HTML.
Я не могу понять, почему это происходит, но я плохо кодирую, поэтому, вероятно, что-то не хватает.
Любая помощь?
попробуйте использовать parseInt (значение) – softwarenewbie7331
@ softwarenewbie7331 где? –
, где вам нужно использовать значение, полученное с ползунка. например parseInt (значения [0]) – softwarenewbie7331