Sergidev commited on
Commit
b784ba3
·
verified ·
1 Parent(s): d75122f

Update script.js

Browse files
Files changed (1) hide show
  1. script.js +36 -23
script.js CHANGED
@@ -1,34 +1,47 @@
1
- let startTime, endTime, clicks = 0, cps = 0;
2
- let intervalId, timeoutId;
 
 
3
 
4
  document.getElementById('start-button').addEventListener('click', startTest);
5
 
6
  function startTest() {
7
- document.getElementById('start-button').classList.add('active');
8
- document.getElementById('start-button').innerHTML = '0';
9
- startTime = new Date().getTime();
10
- intervalId = setInterval(updateCounter, 1000);
11
- timeoutId = setTimeout(endTest, 15000);
12
- document.addEventListener('click', countClick);
13
  }
14
 
15
- function countClick() {
16
- clicks++;
17
- document.getElementById('start-button').innerHTML = clicks;
 
 
 
 
 
 
 
18
  }
19
 
20
- function updateCounter() {
21
- cps = Math.round((clicks / ((new Date().getTime() - startTime) / 1000)) * 100) / 100;
22
- document.getElementById('cps-display').innerHTML = `Clicks Per Second: ${cps}`;
23
- document.getElementById('timer').innerHTML = `Time remaining: ${Math.ceil((15000 - (new Date().getTime() - startTime)) / 1000)} seconds`;
 
 
 
 
 
 
24
  }
25
 
26
- function endTest() {
27
- clearInterval(intervalId);
28
- clearTimeout(timeoutId);
29
- document.removeEventListener('click', countClick);
30
- document.getElementById('cps-display').innerHTML = `Your Clicks Per Second: ${cps}`;
31
- document.getElementById('timer').innerHTML = '';
32
- document.getElementById('start-button').innerHTML = 'Start';
33
- document.getElementById('start-button').classList.remove('active');
34
  }
 
1
+ let startTime;
2
+ let endTime;
3
+ let clicks = 0;
4
+ let intervalId;
5
 
6
  document.getElementById('start-button').addEventListener('click', startTest);
7
 
8
  function startTest() {
9
+ startTime = new Date().getTime();
10
+ intervalId = setInterval(updateTimer, 1000);
11
+ document.getElementById('start-button').classList.add('active');
12
+ document.getElementById('start-button').innerHTML = '0';
13
+ document.getElementById('start-button').disabled = true;
 
14
  }
15
 
16
+ function updateTimer() {
17
+ let currentTime = new Date().getTime();
18
+ let timeElapsed = Math.floor((currentTime - startTime) / 1000);
19
+ let timeRemaining = 15 - timeElapsed;
20
+ let minutes = Math.floor(timeRemaining / 60);
21
+ let seconds = timeRemaining % 60;
22
+ document.getElementById('timer').innerHTML = `${minutes}:${seconds.toString().padStart(2, '0')}`;
23
+ if (timeRemaining <= 0) {
24
+ endTest();
25
+ }
26
  }
27
 
28
+ function endTest() {
29
+ endTime = new Date().getTime();
30
+ clearInterval(intervalId);
31
+ let totalTime = (endTime - startTime) / 1000;
32
+ let clicksPerSecond = clicks / totalTime;
33
+ document.getElementById('total-clicks').innerHTML = `Total Clicks: ${clicks}`;
34
+ document.getElementById('clicks-per-second').innerHTML = `Clicks Per Second: ${clicksPerSecond.toFixed(2)}`;
35
+ document.getElementById('start-button').disabled = false;
36
+ document.getElementById('start-button').innerHTML = 'Start';
37
+ document.getElementById('start-button').classList.remove('active');
38
  }
39
 
40
+ document.addEventListener('click', countClick);
41
+
42
+ function countClick() {
43
+ clicks++;
44
+ document.getElementById('start-button').innerHTML = clicks;
45
+ let clicksPerSecond = clicks / ((new Date().getTime() - startTime) / 1000);
46
+ document.getElementById('clicks-per-second').innerHTML = `Clicks Per Second: ${clicksPerSecond.toFixed(2)}`;
 
47
  }