jQuery slide 在 Chrome 61.0.3163.100 中停止触发事件
jQuery slide stopped triggering events in Chrome 61.0.3163.100
三天前,这用于在移动滑块时打印控制台输出(每晚在 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 中),它没有向控制台记录任何内容。我错过了什么,还是某种更新?
你可以这样写滑块
$("#installs").slider({min: 0,max: 500,step: 10,slide: function (event, ui){console.log("slide");},change:function(event,ui{console.log("updatge");}});
它不起作用的原因是 <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());
});
});
三天前,这用于在移动滑块时打印控制台输出(每晚在 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 中),它没有向控制台记录任何内容。我错过了什么,还是某种更新?
你可以这样写滑块
$("#installs").slider({min: 0,max: 500,step: 10,slide: function (event, ui){console.log("slide");},change:function(event,ui{console.log("updatge");}});
它不起作用的原因是 <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());
});
});