希望有人能为我揭示这一点......
我有一个jquery UI滑块,需要很高的数字(例如0到600,000)。 将step选项设置为1(默认设置),我看到滑块返回的数字不是递增/递减1(在0 - 600,000示例中,我得到508的增量)。
我觉得这是预期的行为,但是,我需要理解为什么会发生这种情况(而且我不是一个数学家!)以便弄清楚如何让它适合我的目的。
请有人帮帮我吗? C.F.下面的代码 - 我正在使用范围选项:
$( "#slider-range" ).slider({
range: true,
min: 0,
max: 600000,
values: [ 0, 600000 ],
step:1,
slide: function( event, ui ) {//Triggered on every mouse move during slide
console.log(ui.values[ 0 ]+' and '+ui.values[ 1 ]);
//$( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
//ui.value : represents the value that the handle will have as a result of the current movement
}
});
非常感谢提前。
答案 0 :(得分:1)
这主要取决于滑块的宽度。
当鼠标移动时,小部件计算新鼠标位置与前一个鼠标位置之间距离的增量。该距离不能小于一个像素。
因此,如果滑块的范围扩展到600,000个单位,但窗口小部件只有100个像素宽(例如),那么将鼠标移动一个像素将导致增加600,000 / 100,即6,000个单位。