Skip to content

Commit 34e2fe4

Browse files
committed
refactor index.js
1 parent 189afb0 commit 34e2fe4

File tree

1 file changed

+42
-33
lines changed

1 file changed

+42
-33
lines changed

index.js

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,45 +3,54 @@ function reveal() {
33
[...revealElements].forEach((element) => {
44
var windowHeight = window.innerHeight;
55
const elementTop = element.getBoundingClientRect().top;
6-
if ((elementTop < windowHeight - (element.getBoundingClientRect().height))) {
7-
// if(element.id=='open-ecommerce'){
8-
// console.log(windowHeight,element.getBoundingClientRect())
9-
// }
6+
if (elementTop < windowHeight - element.getBoundingClientRect().height) {
107
element.classList.add("active");
118
} else {
129
element.classList.remove("active");
1310
}
14-
})
11+
});
1512
}
1613
window.addEventListener("scroll", reveal);
17-
18-
function activeNav(element){
19-
const navColumnarMenu = document.getElementById('nav-columnar-menu');
20-
if (navColumnarMenu.classList.contains('active')) {
21-
navColumnarMenu.classList.remove("active");
22-
document.getElementsByTagName("main")[0].classList.remove('opacity-effect')
23-
document.getElementsByClassName("nav-header-menu")[0].classList.remove('opacity-effect')
24-
}
25-
else if(element.id==='show-nav-columnar-menu'){
26-
navColumnarMenu.classList.add("active");
27-
document.getElementsByTagName("main")[0].classList.add('opacity-effect')
28-
document.getElementsByClassName("nav-header-menu")[0].classList.add('opacity-effect')
29-
// document.getElementsByClassName("nav-header-menu")[0].
30-
}
31-
14+
function removeActive(navColumnarMenu) {
15+
navColumnarMenu.classList.remove("active");
16+
document.getElementsByTagName("main")[0].classList.remove("opacity-effect");
17+
document
18+
.getElementsByClassName("nav-header-menu")[0]
19+
.classList.remove("opacity-effect");
20+
}
21+
function addActive(navColumnarMenu) {
22+
navColumnarMenu.classList.add("active");
23+
document.getElementsByTagName("main")[0].classList.add("opacity-effect");
24+
document
25+
.getElementsByClassName("nav-header-menu")[0]
26+
.classList.add("opacity-effect");
3227
}
3328
document.addEventListener("DOMContentLoaded", function (event) {
34-
[...document.getElementsByTagName("a")].forEach(
35-
function (element) {
36-
element.addEventListener('click', ()=>activeNav(element))
37-
}
38-
)
39-
document.addEventListener('touchstart', (ev) => {
40-
if(ev.path.some(element=>(element.tagName==='MAIN'||element.classList?.contains('nav-header-menu')))){
29+
[...document.getElementsByTagName("a")].forEach(function (element) {
30+
element.addEventListener("click", () => {
4131
const navColumnarMenu = document.getElementById("nav-columnar-menu");
42-
navColumnarMenu.classList.remove("active");
43-
document.getElementsByTagName("main")[0].classList.remove('opacity-effect')
44-
document.getElementsByClassName("nav-header-menu")[0].classList.remove('opacity-effect')
45-
}
46-
}, false);
47-
})
32+
if (navColumnarMenu.classList.contains("active")) {
33+
removeActive(navColumnarMenu);
34+
}
35+
if (element.id === "show-nav-columnar-menu") {
36+
addActive(navColumnarMenu);
37+
}
38+
});
39+
});
40+
document.addEventListener(
41+
"touchstart",
42+
(ev) => {
43+
const navColumnarMenu = document.getElementById("nav-columnar-menu");
44+
if (
45+
ev.path.some(
46+
(element) =>
47+
element.tagName === "MAIN" ||
48+
element.classList?.contains("nav-header-menu")
49+
)
50+
) {
51+
removeActive(navColumnarMenu);
52+
}
53+
},
54+
false
55+
);
56+
});

0 commit comments

Comments
 (0)