-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
41 lines (33 loc) · 1.12 KB
/
script.js
File metadata and controls
41 lines (33 loc) · 1.12 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
const tabContainer = document.getElementById('tab-container');
const firstTab = document.querySelector('.first, .tab');
firstTab.classList.add('activeTab');
tabContainer.addEventListener('click', (e) => toggleActiveTabCard(e));
toggleActiveTabCard = (e) => {
removeInitialActiveClass();
const activeTab = e.target;
const activeClass = '.' + activeTab.classList[0];
const activeCard = document.querySelectorAll(activeClass)[1].classList;
activeCard.add('activeCard');
activeTab.classList.add('activeTab');
}
removeInitialActiveClass = () => {
const allTabs = document.querySelectorAll('.tab');
const allCards = document.querySelectorAll('.card');
const allTabsLength = Object.keys(allTabs).length;
for(let i = 0; i < allTabsLength; i++) {
allTabs[i].classList.remove('activeTab');
allCards[i].classList.remove('activeCard');
}
}
showCode = (element) => {
if(element.className.includes('active-view')) {
element.classList.remove('active-view')
element.scrollTo({
top: 0,
left: 0,
behavior: 'smooth'
})
} else {
element.classList.add('active-view')
}
}