JSFiddle - React, Tailwind, and code Playground
by buzz868
HTML
<h2 id="number">18</h2>
JavaScript
function animateValue(id, start, end, duration) {
var end = document.getElementById(end).innerText;
var range = end - start;
var current = start;
var increment = end > start? 1 : -1;
var stepTime = Math.abs(Math.floor(duration / range));
var obj = document.getElementById(id);
var timer = setInterval(function() {
current += increment;
obj.innerHTML = current;
if (current == end) {
clearInterval(timer);
}
}, stepTime);
}
animateValue("number", 0, "number", 5000);