| (function() { |
| const menuBtn = document.getElementById('inlineMenuBtn'); |
| const menu = document.getElementById('inlineMenu'); |
| const topLink = document.getElementById('scrollTopLink'); |
|
|
| function closeMenu() { |
| if (!menu) return; |
| menu.classList.remove('open'); |
| menu.setAttribute('aria-hidden', 'true'); |
| } |
|
|
| if (menuBtn && menu) { |
| menuBtn.addEventListener('click', function(e) { |
| e.preventDefault(); |
| const isOpen = menu.classList.contains('open'); |
| if (isOpen) { |
| closeMenu(); |
| } else { |
| menu.classList.add('open'); |
| menu.setAttribute('aria-hidden', 'false'); |
| } |
| }); |
| } |
|
|
| if (topLink) { |
| topLink.addEventListener('click', function(e) { |
| e.preventDefault(); |
| window.scrollTo({ top: 0, behavior: 'smooth' }); |
| closeMenu(); |
| }); |
| } |
|
|
| |
| document.addEventListener('click', function(e) { |
| if (!menu || !menuBtn) return; |
| if (!menu.contains(e.target) && !menuBtn.contains(e.target)) { |
| closeMenu(); |
| } |
| }); |
|
|
| |
| document.addEventListener('keydown', function(e) { |
| if (e.key === 'Escape') closeMenu(); |
| }); |
| })(); |