7

示例代码:http: //jsbin.com/eqile3/

这是一个带有 2 个句柄的滑块,1 个代表最小值,1 个代表最大值,在滑动事件中,这些值被放入输入字段中。

请注意,当上下滑动最小手柄时,最小值为 11(尽管我将其设置为 10),但是当从最小位置向上滑动时,它从 11 变为 10,然后是 11。如果我向下滑动又是 12 点,然后是 11 点……

很奇怪的错误,不知道原因在哪里?

此外,当最小句柄位于第 0 步的第一步时,值为 10,然后我移动最大句柄,最小句柄的值将正确更新。最大句柄有相反的问题。

示例中的相关 javascript:

$(document).ready(function(){
  $('#clarityslider').slider({step:1,min:10,max:18,range:true,values:[10, 18]});  

  $('#clarityslider').bind('slide', function(ui, event){
    valuemin = $(this).slider('values', 0);
    valuemax = $(this).slider('values', 1);


    $(this).next().val(valuemax);
    $(this).prev().val(valuemin);
  });
});
4

2 回答 2

14

哇非常感谢!这对我也很有帮助,因为我遇到了完全相同的问题!

slide: function(event, ui) {
          var Oldvalue = $('#slider').slider("value");

改为_

slide: function(event, ui) {
              var Oldvalue = ui.value;
于 2010-12-27T20:02:15.517 回答
9

确实是奇怪的价值观。这更加简化并且像魅力一样工作:

$(document).ready(function(){

    var valuemin = valuemax = 0;

    $('#clarityslider').slider({
        min:    10,
        max:    18,
        range:  true,
        values: [10, 18],
        slide:  function(event, ui) {
            valuemin = ui.values[0];
            valuemax = ui.values[1];
            $(this).next().val(valuemax);
            $(this).prev().val(valuemin);
        }
    });
});

祝你正在建造的东西好运!

于 2010-08-20T07:26:10.920 回答