decimals=0 不在所有步骤之间工作

decimals=0 nor working between all steps

我有这个设置:

                <script>
                    // Behaviour
                    jQuery("#lp-slider").noUiSlider({
                        start: [ 30000 ],
                        connect: "lower",
                        range: {
                            'min': [ 2000,100 ],
                            '20%': [ 20000,1000 ],
                            '40%': [ 30000,2000 ],
                            '60%': [ 50000,2000 ],
                            '80%': [ 70000,3000 ],
                            'max': [ 100000 ]
                        },
                        // Number formatting
                        format: wNumb({
                            decimals: 0
                        })
                    });

                    // Link value to input
                    jQuery("#lp-slider").Link('lower').to(jQuery('#kwh'));
                </script>

我将它绑定到一个输入字段。当第一个值为 10.000 时,它运行良好。但是当第一个值低于 10.000 时,我在逗号后得到奇怪的小数,如“13099.99997”,即使小数 = 0.

我在代码中这样设置,如何保证真的只输出100?

在此先感谢您的帮助! getimo

设置滑块上的 format 选项会影响 .val() 读数。您可以在 .Link() 上使用相同的格式化程序,如下所示:

jQuery("#lp-slider").Link('lower').to(jQuery('#kwh'), null, wNumb({
    decimals: 0
}));

Working jsFiddle.

编辑回复评论:

你遇到了一个棘手的错误!在第 77 行,您有:

<script src="/landing/0custom/nouislider/jquery.nouislider.all.min.js"></script><script src="/landing/0custom/nouislider/wNumb.js"></script>

jquery.nouislider.all.min.js 已经包含 wNumb。您包含的 wNumb.js 是旧版本 before this bugfix。删除 wNumb.js 以解决您的问题。

我刚遇到这个问题。我所要做的就是下载最新版本的 wNumb 并将其放入我存储旧版本的项目文件夹中。然后一切都很完美!希望这对您有所帮助!