diff --git a/frontend/src/layouts/Layout.astro b/frontend/src/layouts/Layout.astro index a4d8826..3b42d31 100644 --- a/frontend/src/layouts/Layout.astro +++ b/frontend/src/layouts/Layout.astro @@ -132,12 +132,14 @@ const publicDemoSite = isEnabled((globalThis as any).process?.env?.PUBLIC_DEMO_S setNavOpen(!nav.classList.contains('is-open')); }); - nav.querySelectorAll('a').forEach((link) => { - link.addEventListener('click', () => { - if (window.matchMedia('(max-width: 640px)').matches) { - setNavOpen(false); - } - }); + nav.addEventListener('click', (event) => { + const target = event.target; + if (!(target instanceof HTMLElement)) return; + if (target.closest('#nav-toggle')) return; + if (!target.closest('a')) return; + if (window.matchMedia('(max-width: 640px)').matches) { + setNavOpen(false); + } }); window.addEventListener('resize', () => {