1

据我所知,如果单击滑块,jQuery UI Range 滑块应该移动最近的拖动器/手柄。然而,在我的情况下,这似乎没有发生,只有左拖动器被移动。作为示例,您可以看到以下代码:

$(function() {
    $( "#slider-range" ).slider({
        range: true,
        min: 0,
        max: 4,
        step: 1,
        values: [ 0, 4 ],
        slide: function( event, ui ) {
            $( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
        }
    });
    $( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) +
        " - $" + $( "#slider-range" ).slider( "values", 1 ) );
});

你可以看到这个例子的 jsFiddle:http: //jsfiddle.net/dZ7Yg/

如果您尝试通过简单地单击滑块将右拖动器/手柄移动到第二个点,您将无法做到这一点。一旦右边的拖动器到达第三个点,即使你在它之前点击1px,它也不会移动到第二个点,无论如何它都会移动左边的。

有人可以帮我吗?如何解决?

感谢您的帮助!

4

1 回答 1

0

点击这些栏有点棘手,但我认为下面是它的行为方式,

条件1:左滑条优先于右滑条。

条件 2:当您单击靠近下一个位置时,滑块移动到下一个位置。例如:在下图中,当您单击包围 P1 的蓝色矩形中的任意位置时,左侧滑块将移动到 P1。

条件 3:单击靠近 Slider 的任何位置都不会执行任何操作。

在此处输入图像描述

记住这些条件并阅读以下内容,

当您将右滑块移动到 P2 时,现在您想将右滑块从 P2 移动到 P1,但是左滑块优先并将其移动到 P1。

在此处输入图像描述

现在再次单击 P1 不会移动右滑块,因为左滑块在 P1 上,并且根据条件 3,它什么也不做。

对我来说,范围的 jQuery 滑块看起来不像我们预期的那样表现。

于 2012-02-17T22:34:38.090 回答