0

范围滑块

$("#slider-range").slider({
        range: true, min: 0, max: 420, values: [0, 420], slide: slideTime, change: toSpin
    });

和文本字段

$('#min').val(ui.values[ 0 ]);
$('#max').val(ui.values[ 1 ]);

我想在每个字段的值发生变化时调用一个函数,比如

$('input').on('input propertychange', function() {

但由于鼠标永远不会在现场,它不会工作。也许本地存储是答案,但在进入它之前,我想我会看看我是否可以只绑定滑块手柄。

我可以像这样使用#slider-range:

var $leftslider = $("#slider-range");  
      $leftslider.bind("mouseup", sliderHandler);
function sliderHandler() {

但我想我需要将 mouseup 分别绑定到每个句柄,左右分别为每个句柄调用不同的函数。因此,在滑块更改#min 后,左手柄 mouseup 将调用一个使用#min 值的函数。

这个主题的变化

$(#slider-range).children('.ui-slider-handle').first().offset();

似乎不起作用。

4

2 回答 2

0

看起来问题在最后是“偏移”。正确的方法:

var $thang = $("#slider-range").children('.ui-slider-handle').first() //removed offset() here;
        $thang.bind("mousedown", thangHandler);

你听到了我的声音:thangHandler。

于 2013-07-16T03:43:09.820 回答
0

好吧,如果你想用事件来做,你可以这样做:

$('#min').val(ui.values[ 0 ]).trigger("input");

然后你可以这样听:

$('input').on('input', function() {

您还可以考虑使用自定义事件名称来明确它不是常规事件,而是您自己触发的事件。

于 2013-07-15T13:01:02.460 回答