Files
dialog-relations-website/packages/base/Resources/Public/JavaScript/navigation.js

42 lines
1.6 KiB
JavaScript

document.addEventListener('DOMContentLoaded', function () {
const nav = document.getElementById('mainNav');
const toggle = document.getElementById('navToggle');
const navLinks = document.getElementById('navLinks');
let lastScrollTop = 0;
// Toggle menu on mobile
toggle.addEventListener('click', function () {
nav.classList.toggle('open');
toggle.classList.toggle('active');
});
// Sticky on scroll
window.addEventListener('scroll', function () {
const currentScroll = window.pageYOffset || document.documentElement.scrollTop;
if (currentScroll > 0) {
nav.classList.add('sticky');
} else {
nav.classList.remove('sticky');
}
lastScrollTop = currentScroll <= 0 ? 0 : currentScroll;
});
// Optionally handle dropdowns on mobile (if desired)
// For example:
const submenuParents = document.querySelectorAll('.nav-item.has-submenu');
submenuParents.forEach(parent => {
parent.addEventListener('click', (e) => {
if (window.innerWidth <= 992) {
e.preventDefault();
const subMenu = parent.querySelector('.sub-menu');
if (subMenu) {
const isOpen = subMenu.style.display === 'block';
// Close all open submenus first (optional)
document.querySelectorAll('.sub-menu').forEach(sm => sm.style.display = 'none');
subMenu.style.display = isOpen ? 'none' : 'block';
}
}
});
});
});