jquery - 如何使用jquery获取更改期间的输入范围?

标签 jquery

我在 Chrome 41 中使用 jQuery 2.1。我需要在输入 slider 发生变化时获取其值;但是,当我将更改事件与 jquery 一起使用时,我仅在释放鼠标后从 slider 获取值,而不是在鼠标按下和拖动期间获取值。

这个小例子说明了问题:

<input type="range" id="slider" value="0.5" min="0.0" max="1.0" step="0.01" />

<br />

<span id="slider_value">Nothing yet.</span>

<script>
$(document).on('change', '#slider', function() {
    $('#slider_value').html( $(this).val() );
});
</script>

我想我可以通过在鼠标向上/向下事件上设置 bool 值然后获取鼠标移动事件的值来解决这个问题。有更清洁的解决方案吗?

最佳答案

在现代浏览器中,您可以使用input事件:

$(document).on('input', '#slider', function() {
    $('#slider_value').html( $(this).val() );
});

请注意,IE < 9不支持它,但也不支持范围输入

引用:MDN input - Event

DEMO

关于jquery - 如何使用jquery获取更改期间的输入范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28932238/

相关文章:

javascript - 如何在同一数组索引处插入具有先前插入项的新数组值

jquery modernizr margin 0 自动不工作

jquery - 如何从位置(x,y)获取谷歌地图v3上的位置(纬度/经度)

jquery - 动态添加事件

javascript - 非常基本的 JSON 问题

javascript - 隐藏图像后显示图像

jquery - Bootstrap-select验证错误放置

jquery - 这个插件是怎么设计的,让IE6崩溃,让IE6崩溃?

jquery - 如何选择仅与特定类关联的 HTML 元素

c# - 如何使用 Selenium 遍历非选择下拉列表?