2011-11-25 72 views
7

我想添加控制按钮到jQuery UI滑块,但无法让它工作。带控制按钮的jQuery UI滑块?

有人能看到什么即时做错了什么:

$(function() { 

    var gmin = 1; 
    var gmax = 500; 

    $("#slider").slider({ 
     value:5, 
     min: gmin, 
     max: gmax, 
     step: 1, 
     slide: function(event, ui) { 
      $("#donate_amount_label span").html("£" + ui.value); 
     } 
    }); 

    $("#donate_amount_label span").html("£" + $("#slider").slider("value")); 
    $("#").val($("#slider").slider("value")); 

    $('#down').click(function() { 

     var s = $("#slider"); 
     s.slider('value', s.slider('value') + s.slider("step")); 

    }); 

}); 

滑块正常工作和价值观得到更新,但是当你点击链接底本:什么也没有发生的滚动条。我希望在单击#down链接时向上移动一步。

感谢 皮特

回答

3

你应该这样做:在获得步骤

var s = $("#slider").slider({ 
    value:5, 
    min: gmin, 
    max: gmax, 
    step: 1, 
    slide: function(event, ui) { 
     $("#donate_amount_label span").html("£" + ui.value); 
    } 
}); 

$('#down').click(function() { 
    s.slider('value', s.slider('value') + s.slider("option", "step")); 

}); 

错误。您必须使用

s.slider("option", "step") 

小提琴这里http://jsfiddle.net/nrNX8/(以1它的动作非常slooooooowly一个步骤)

+0

好极了!那有效。非常感谢尼古拉。 –

+0

如果鼠标按钮被按下,有没有办法修改它以保持滚动? –

+3

看来,在你的例子中,滑动事件并没有使用#down来触发 – kuba