我遇到了一个奇怪的问题。
当我再次移动滑块时,我的所有输入(类型范围)都没有发送值,但是当鼠标按钮实现时,该值就会更新。
这里是一个用于更新振荡器频率值的滑块的简单示例。
http://jsfiddle.net/salvonostrato/aL9jg/
5小时前,我的所有其他应用都运行良好。我没有改变任何东西,在Safari中工作得很好。
我使用简单的jquery更改函数来更新值。
$('#slider').change(function () {
console.log ($("#slider").val());
oscillator.frequency.value = $("#slider").val();
document.getElementById('freq').value = $("#slider").val();
});
我是否需要担心并改变我的所有项目,或者只是因为Chrome团队正在更新服务器或库?
谢谢
答案 0 :(得分:0)
是的,看起来最近对chrome的更新将change
事件更改为仅在您停止移动句柄时触发。幸运的是,你仍然可以使用输入事件。
$('#slider').on("input change", function () {
console.log($("#slider").val());
oscillator.frequency.value = $("#slider").val();
document.getElementById('freq').value = $("#slider").val();
});
我留下了“更改”,以便与不支持input
的浏览器向后兼容,但由于您使用的是webkit界面,因此只使用输入可能是安全的。