toutes les pages de mobile ok

This commit is contained in:
Valentin
2023-12-14 06:01:09 +01:00
parent 1bf7b2b251
commit 6c4cf6f696
8 changed files with 236 additions and 19 deletions

View File

@@ -18,22 +18,56 @@
});
})(jQuery, window);
//
// Toggle du menu
//
const hamburgerBtn = document.getElementById("hamburger");
const hamburgerIcon = document.querySelector(".burger-icon");
const menu = hamburgerBtn.nextElementSibling;
const menuItems = menu.children;
const opacityDelay = 50;
function toggleMenuItems(action) {
let delay = opacityDelay;
for (let i = 0; i < menuItems.length; i++) {
setTimeout(() => {
if (action === 'show') {
menuItems[i].classList.add('visible');
} else if (action === 'hide') {
menuItems[menuItems.length - i - 1].classList.remove('visible');
}
}, delay);
delay += opacityDelay;
}
}
// Toggle menu visibility on hamburger click
hamburgerBtn.addEventListener("click", function(event) {
event.stopPropagation();
menu.classList.toggle("active");
hamburgerIcon.classList.toggle('open');
if(menu.classList.contains('active')) {
setTimeout(() => {
menu.style.display = "none";
}, 700);
toggleMenuItems('hide');
} else {
menu.style.display = "block";
toggleMenuItems('show');
}
setTimeout(() => {
menu.classList.toggle("active");
}, 1);
});
// Close menu when clicking outside of the menu
document.addEventListener("click", function(event) {
const isMenuClicked = event.target.closest("#menu") !== null;
const isHamburgerClicked = event.target === hamburgerBtn;
const isMenuClicked = event.target === menu || event.target.parentElement === menu;
if (!isMenuClicked && !isHamburgerClicked) {
hamburgerIcon.classList.remove('open');
menu.classList.remove("active");
toggleMenuItems('hide');
}
});
}