【发布时间】:2018-11-26 17:21:43
【问题描述】:
我正在尝试编写一个脚本,以便在每次选择更改时将一个数字增加到所选数字。例如,如果用户选择 30,我希望数字以每秒 30 个值的速率增加,以便在一秒钟内达到 30。
我不知道出了什么问题,但是在执行此脚本时,它只会在第一个页面加载时增加,但值没有变化。
https://jsfiddle.net/User1010/b7znc3fL/
var valueElement = document.getElementById('value');
var option = document.getElementById('option');
var start = 0;
var end = parseFloat(option.innerHTML);
var duration = 1000; // In milliseconds (divide by 1000 to get seconds).
var framerate = 50; // In milliseconds (divide by 1000 to get seconds).
var toAdd = ( ( end - start ) * framerate ) / duration;
var interval = setInterval(function() {
var currentValue = parseFloat(valueElement.innerHTML);
if (currentValue >= end) {
clearInterval(interval);
return;
}
valueElement.innerHTML = (!isNaN(currentValue) == true ? (currentValue + toAdd).toFixed(2) : toAdd);
}, framerate);
【问题讨论】:
标签: javascript html increment