Javascript 当数字较大时,jQuery移动滑块步骤不起作用

Javascript 当数字较大时,jQuery移动滑块步骤不起作用,javascript,jquery,jquery-mobile,jquery-mobile-slider,Javascript,Jquery,Jquery Mobile,Jquery Mobile Slider,我有一个从100万到500万的滑块,尽管我将步长指定为1000,但jquery mobile在使用滑块时还是将步长优化为50000。是否有任何方法可以强制推翻这种行为 <form> <label for="slider-1">Slider:</label> <input type="range" name="slider-1" id="slider-1" min="0" max="5000000" value="10" step="

我有一个从100万到500万的滑块,尽管我将步长指定为1000,但jquery mobile在使用滑块时还是将步长优化为50000。是否有任何方法可以强制推翻这种行为

<form>
    <label for="slider-1">Slider:</label>
    <input type="range" name="slider-1" id="slider-1" min="0" max="5000000" value="10"    step="10" />
</form>

滑块:
此处演示:


如果我没弄错的话,除非您愿意更改jQm的源代码,否则您不能覆盖它

作为该行为源的行位于函数中。更准确地说,以下模块:

if ( typeof val === "object" ) {
    data = val;
    // a slight tolerance helped get to the ends of the slider
    tol = 8;
    left = this.slider.offset().left;
    width = this.slider.width();
    pxStep = width/((max-min)/step);
    if ( !this.dragging ||
        data.pageX < left - tol ||
        data.pageX > left + width + tol ) {
            return;
    }
    if ( pxStep > 1 ) {
        percent = ( ( data.pageX - left ) / width ) * 100;
    } else {
        percent = Math.round( ( ( data.pageX - left ) / width ) * 100 );
    }
}
if(typeof val==“object”){
数据=val;
//轻微的公差有助于到达滑块的末端
tol=8;
左=此.slider.offset().left;
宽度=this.slider.width();
pxStep=宽度/(最大-最小)/步长;
如果(!this.draging)||
data.pageX<左-左||
data.pageX>left+width+tol){
返回;
}
如果(步骤>1){
百分比=((data.pageX-左)/宽度)*100;
}否则{
百分比=数学四舍五入(((data.pageX-左)/宽度)*100);
}
}
在使用鼠标/点击进行交互的情况下,val是一个对象,在您的情况下pxStep低于1。因此,我们的回合开始了


附言:我并不完全确定我写了什么,它只是快速浏览了一下代码,但在我看来,它的行为是这样的。

谢谢!,在这之后,我正要深入挖掘核心,但你在前面,我现在禁用了百分比步检查,同时考虑更全面的解决方案(修改数学)。