1

希望有人可以为我阐明这一点...

我有一个 jquery UI 滑块,它需要大量数字(例如 0 - 600,000)。将 step 选项设置为 1(默认设置),我看到滑块返回的数字不是增量/减量 1(在 0 - 600,000 示例中,我得到的增量为 508)。

我觉得这是预期的行为,但是,我需要了解为什么会发生这种情况(而且我不是一个数学家!),以便弄清楚如何让它为我的目的工作。

请问有人可以帮我吗?下面的 Cf 代码 - 我正在使用范围选项:

$( "#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
        }
    });

提前谢谢了。

4

1 回答 1

1

这基本上取决于滑块的宽度。

当鼠标移动时,小部件根据新鼠标位置和前一个鼠标位置之间的距离计算增量。这个距离不能小于一个像素。

因此,如果您的滑块范围扩展到 600,000 个单位,但小部件只有 100 个像素宽(例如),那么将鼠标移动一个像素将导致 600,000 / 100 的增量,即 6,000 个单位。

于 2013-01-16T14:01:08.730 回答