-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathscript.js
More file actions
54 lines (42 loc) · 1.09 KB
/
script.js
File metadata and controls
54 lines (42 loc) · 1.09 KB
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
const span = document.querySelectorAll('span');
const final = document.getElementById('final');
const counter = document.querySelector(`.counter`);
const btn = document.getElementById(`btn`);
var idx = 0;
const len = span.length;
startTimer();
var interval;
function startTimer() {
span.forEach((temp) => {
temp.classList.remove(`inNums`);
temp.classList.remove(`outNums`);
})
idx = 0;
interval = setInterval(animate, 1000);
}
function animate() {
if (idx == len) {
clearInterval(interval);
counter.classList.add(`removed`);
final.classList.remove(`removed`);
return;
}
span.forEach((temp) => {
temp.classList.remove(`outNums`);
})
if (idx == 0) {
span[idx].classList.add(`inNums`);
idx++;
return;
}
span[idx - 1].classList.remove(`inNums`);
span[idx - 1].classList.add(`outNums`);
span[idx].classList.add(`inNums`);
idx++;
return;
}
btn.addEventListener('click', () => {
counter.classList.remove(`removed`);
final.classList.add(`removed`);
startTimer();
})