index-main/assets/js/header.js

54 lines
1.5 KiB
JavaScript
Raw Normal View History

2026-01-06 13:57:45 +01:00
export function headerToggle() {
const header = document.getElementById("site-header");
const buttonToggle = document.querySelector("#menu-toggle");
const siteMenu = document.getElementById("site-menu");
const overlay = document.getElementById("menu-overlay");
2026-01-06 13:57:45 +01:00
if (!header || !buttonToggle) return;
function openMenu() {
document.body.classList.add("menu-open");
buttonToggle.setAttribute("aria-expanded", "true");
buttonToggle.setAttribute("aria-label", "Fermer le menu");
siteMenu?.removeAttribute("inert");
}
function closeMenu() {
document.body.classList.remove("menu-open");
buttonToggle.setAttribute("aria-expanded", "false");
buttonToggle.setAttribute("aria-label", "Ouvrir le menu");
siteMenu?.setAttribute("inert", "");
}
buttonToggle.addEventListener("click", (e) => {
e.stopPropagation();
document.body.classList.contains("menu-open") ? closeMenu() : openMenu();
});
header.addEventListener("click", () => {
if (document.body.classList.contains("menu-open")) closeMenu();
});
overlay?.addEventListener("click", closeMenu);
2026-01-06 13:57:45 +01:00
}
2026-01-23 17:38:08 +01:00
// DELETE?
2026-01-06 13:57:45 +01:00
export function headerScrollVisibility() {
const header = document.getElementById("site-header");
2026-01-09 14:57:48 +01:00
if (!header) return;
2026-01-06 13:57:45 +01:00
function checkScroll() {
2026-01-22 14:46:05 +01:00
if (window.scrollY >= 300) {
header.classList.add("is-visible");
2026-01-06 13:57:45 +01:00
} else {
2026-01-22 14:46:05 +01:00
header.classList.remove("is-visible");
2026-01-06 13:57:45 +01:00
}
}
window.addEventListener("scroll", checkScroll);
2026-01-22 14:46:05 +01:00
checkScroll();
2026-01-06 13:57:45 +01:00
}