window.addEventListener('DOMContentLoaded', function() { var getVisitsElement = document.querySelector('.getvisits'); var getsid = getVisitsElement.getAttribute('data-sid'); var getcid = getVisitsElement.getAttribute('data-cid'); getVisitsCount_681e2bf7d4a6d(getcid); function getVisitsCount_681e2bf7d4a6d(getcid) { var xhr = new XMLHttpRequest(); xhr.open('GET', '/?p=/Do/get_visits/scode/' + getsid + '/id/' + getcid, true); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var response = JSON.parse(xhr.responseText); if (response.code == 1) { if (response.data > 30) { animateCounter_681e2bf7d4a6f('getvisits', 0, response.data, 500); } else { var getVisitsElement = document.querySelector('.getvisits'); getVisitsElement.innerText = response.data; } } } }; xhr.send(); } function animateCounter_681e2bf7d4a6f(counterClass, startValue, endValue, duration) { var counterElements = document.getElementsByClassName(counterClass); var startTime = null; var difference = endValue - startValue; function updateCounter(timestamp) { if (!startTime) startTime = timestamp; var progress = timestamp - startTime; var currentValue = startValue + (progress / duration) * difference; if (currentValue > endValue) { currentValue = endValue; } Array.from(counterElements).forEach (function(element) { element.innerText = Math.round(currentValue); }); if (progress < duration) { requestAnimationFrame(updateCounter); } } requestAnimationFrame(updateCounter); } });