#javascript #jquery #twitter-bootstrap
#javascript #jquery #twitter-bootstrap
Вопрос:
Я использую ползунок начальной загрузки в своем коде. Я могу заставить слайдер работать. Мое требование — изменить цвет выбранного раздела ползунка на основе выбранного значения. Я могу изменить цвет, но с такой задержкой. Я попытался отобразить значение, выбранное в другом поле ввода, которое снова требует больше времени для отражения. Я не уверен, связано ли это с задержкой ответа / неправильным кодом. Это должно быть довольно просто, но я застрял, так как я новичок в JS. Любая помощь будет высоко оценена. Вот код, который я использовал. Заранее спасибо!
ВКЛЮЧЕННЫЕ ФАЙЛЫ:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
<script src="http://seiyria.com/bootstrap-slider/js/bootstrap-slider.js"></script>
<link href="http://seiyria.com/bootstrap-slider/css/bootstrap-slider.css" rel="stylesheet">
<link href="http://seiyria.com/bootstrap-slider/dependencies/css/bootstrap.min.css" rel="stylesheet">
HTML
<input
type="text"
Id = "score"
name="scoreSlide"
data-provide="slider"
data-slider-ticks="[1, 2, 3]"
data-slider-ticks-labels='["short", "medium", "long"]'
data-slider-min="1"
data-slider-max="3"
data-slider-step="1"
data-slider-value="3"
data-slider-tooltip="hide"
/>
<input type="text" ID="lbl" />
JAVA SCRIPT / JQUERY
<script>
var RGBChange = function() {
if(r.getValue() ==1 ){
$('.slider-selection').css('background', 'red');
document.getElementById("lbl").value = r.getValue();
}
else{
$('.slider-selection').css('background', 'green');
document.getElementById("lbl").value = r.getValue();
}
};
var r = $('#score').slider()
.on('slide', RGBChange)
.data('slider');
</script>
Ответ №1:
Попробуйте использовать slideStart вместо слайда, подобного этому:
var r = $('#score').slider()
.on('slideStart', RGBChange)
.data('slider');
Комментарии:
1. Спасибо, Ашаб! Это позволило ускорить работу. Но теперь есть еще одна проблема: он отлично работает при двойном щелчке по точкам. Значения соответствуют определению (1, 2, 3) одним щелчком мыши, значения перемешиваются (например, становится 3, 1, 2) Есть идеи, почему?
2. Я изменил ‘slideStart’ на ‘slideStop’, и это сработало отлично. Еще раз спасибо! @Aschab