简单的十进制百分比加载器



我试图实现一个简单的百分比加载器,但对于某些目标值,它提供了错误!

一些正确的值集方案:

target = 92.4
  • ,则增量函数将元素文本设置为 92.4%
  • target = 91.7,则增量函数将元素文本设置为 90.8

一些错误的值集场景:

  • target = 90,则增量函数将元素文本设置为 89.1%
  • target = 91.7,则增量函数将元素文本设置为 90.8%
  • target = 100,则增量函数将元素文本设置为 99.0%

我的目标是获得目标中设置的正确增量值作为最终结果!

<div class="progress" />
function incrementLoader(target) {
var value = 0,
ment = parseFloat(target - value) / 100,
elem = document.querySelector(".progress");
var interval = setInterval(function() {
if (value >= parseFloat(target)) {
return clearInterval(interval);
}
elem.textContent = `${parseFloat(value).toFixed(1)}%`;
value = Math.fround(parseFloat(value + ment) * 100) / 100;
}, 20);
}
incrementLoader(92.4);

显示目标值后检查是否达到目标值。

最新更新