据我所知,如果单击滑块,jQuery UI Range滑块应该移动最近的dragger / handle。但是在我的情况下,这似乎没有发生,只有左侧拖动器被移动。例如,您可以看到以下代码:
$(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,它将不会移动到第二个点,它将在任何情况下移动左侧。
有人可以帮我这个吗?怎么解决这个问题?
感谢您的帮助!
答案 0 :(得分:0)
单击这些栏有点棘手,但我认为下面是它的表现,
条件1 :左侧滑块优先于右侧滑块。
条件2 :当您点击靠近下一个位置时,滑块会移动到下一个位置。例如:在下图中,当您单击包围P1的蓝色矩形中的任何位置时,左侧滑块将移动到P1。
条件3 :点击滑块附近的任何地方都不会做任何事情。
请记住这些条件并阅读以下内容,
当您将右滑块移动到P2时,现在您想要将滑块从P2移动到P1,但是左滑块优先并将其移动到P1。
现在再次单击P1不会向右移动滑块,因为左侧滑块位于P1上,而根据条件3,它不执行任何操作。
对我而言,范围的jQuery滑块看起来并不像我们期望的那样。