File size: 1,324 Bytes
a619b24 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
let startTime, endTime, clicks = 0, cps = 0;
let intervalId, timeoutId;
document.getElementById('start-button').addEventListener('click', startTest);
function startTest() {
document.getElementById('start-button').classList.add('active');
document.getElementById('start-button').innerHTML = '0';
startTime = new Date().getTime();
intervalId = setInterval(updateCounter, 1000);
timeoutId = setTimeout(endTest, 15000);
document.addEventListener('click', countClick);
}
function countClick() {
clicks++;
document.getElementById('start-button').innerHTML = clicks;
}
function updateCounter() {
cps = Math.round((clicks / ((new Date().getTime() - startTime) / 1000)) * 100) / 100;
document.getElementById('cps-display').innerHTML = `Clicks Per Second: ${cps}`;
document.getElementById('timer').innerHTML = `Time remaining: ${Math.ceil((15000 - (new Date().getTime() - startTime)) / 1000)} seconds`;
}
function endTest() {
clearInterval(intervalId);
clearTimeout(timeoutId);
document.removeEventListener('click', countClick);
document.getElementById('cps-display').innerHTML = `Your Clicks Per Second: ${cps}`;
document.getElementById('timer').innerHTML = '';
document.getElementById('start-button').innerHTML = 'Start';
document.getElementById('start-button').classList.remove('active');
} |