jQuery UI Slider:从与slide事件关联的函数中访问选项

时间:2013-04-09 21:35:31

标签: javascript jquery jquery-ui uislider

我有一个以这种方式定义的滑块:

$( "#myslider").slider({
    range: true,
    min: min_val,
    max: max_val,
    values: [ min_val, max_val ],
    slide: function(event, ui){
        $('#input_min').val(ui.values[0]);
        $('#input_max').val(ui.values[1]);
    },
});

min_valmax_val可以更改。

现在让我们说在与幻灯片事件相关的函数中,我想检查当前的最小值和最大值是否与初始值不同。

我知道我可以使用ui.values访问当前值,我可以使用以下代码获取初始最小值和最大值:

var inital_min = $( "#myslider").slider("option", "min");
var inital_max = $( "#myslider").slider("option", "max");

但这看起来很愚蠢,因为我已经从回调中获得了ui个对象。

我试图用firebug导航对象,但我无法找到我正在寻找的东西。

那么,还有其他方法可以获得这些值吗?

3 个答案:

答案 0 :(得分:1)

您可以使用它来访问它。我把它弄成了小提琴。

http://jsfiddle.net/dhQk/vr2Mg/

var i_max = $(this).slider('option', 'max');
var i_min = $(this).slider('option', 'min');

不幸的是,根据官方参考文献,没有本地对象会有它。 http://api.jqueryui.com/slider/#event-slide

答案 1 :(得分:0)

min_val和max_val变量可以在幻灯片回调中重复使用。

答案 2 :(得分:0)

事实并非如此,您可以使用事件对象获取滑块对象并在方法内访问它们:

$(event.target).slider("option","max")