三天前,这用于在移动滑块时打印控制台输出(在Firefox中每晚):
$(document).ready(function() {
$('.slider').slider({
slide: function() {
console.log('slide');
},
change: function() {
console.log('change');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<input type="range" min="0" max="10" value="0" class="slider" id="slider0" name="slider0"/>
今天当我尝试它(在Chrome 61.0中)时,它不会将任何内容记录到控制台。我错过了什么,还是某种类型的更新?
答案 0 :(得分:0)
它不起作用的原因是<input/>
是它不打算用作jQuery UI的滑块。这适用于常规输入滑块,没有jQuery UI:
$(function() {
var prevVal = {};
$('.slider').on('change mousemove', function () {
var slider = $(this);
if (slider.val() != (prevVal[slider.attr('id')] || 0)) {
prevVal[slider.attr('id')] = slider.val();
slider.trigger('slide');
}
});
$('.slider').on('slide', function () {
console.log('Sliding:', $(this).val());
});
});
答案 1 :(得分:-1)
您可以像这样编写滑块
$("#installs").slider({min: 0,max: 500,step: 10,slide: function (event, ui){console.log("slide");},change:function(event,ui{console.log("updatge");}});