diff options
Diffstat (limited to 'themes/danix-xyz-hacker')
| -rw-r--r-- | themes/danix-xyz-hacker/assets/css/main.css | 6 | ||||
| -rw-r--r-- | themes/danix-xyz-hacker/assets/css/main.min.css | 5 | ||||
| -rw-r--r-- | themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html | 48 |
3 files changed, 44 insertions, 15 deletions
diff --git a/themes/danix-xyz-hacker/assets/css/main.css b/themes/danix-xyz-hacker/assets/css/main.css index 883d485..f7d42a9 100644 --- a/themes/danix-xyz-hacker/assets/css/main.css +++ b/themes/danix-xyz-hacker/assets/css/main.css @@ -70,8 +70,12 @@ html.theme-light { } @layer base { + html { + @apply overflow-x-hidden; + } + body { - @apply bg-bg text-text font-body; + @apply bg-bg text-text font-body overflow-x-hidden; } h1, diff --git a/themes/danix-xyz-hacker/assets/css/main.min.css b/themes/danix-xyz-hacker/assets/css/main.min.css index 82ac77c..36c66d1 100644 --- a/themes/danix-xyz-hacker/assets/css/main.min.css +++ b/themes/danix-xyz-hacker/assets/css/main.min.css @@ -554,7 +554,12 @@ video { display: none; } +html { + overflow-x: hidden; +} + body { + overflow-x: hidden; background-color: var(--bg); font-family: IBM Plex Sans, sans-serif; color: var(--text); diff --git a/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html b/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html index 4260456..4d02d9c 100644 --- a/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html +++ b/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html @@ -66,12 +66,21 @@ </div> <script> - document.addEventListener('DOMContentLoaded', () => { + function initializeHamburgerMenu() { const menuToggle = document.getElementById('menu-toggle'); const menuClose = document.getElementById('menu-close'); const menuOverlay = document.getElementById('menu-overlay'); const hamburgerMenu = document.getElementById('hamburger-menu'); + if (!menuToggle || !menuOverlay || !hamburgerMenu) { + console.warn('Hamburger menu elements not found', { + menuToggle: !!menuToggle, + menuOverlay: !!menuOverlay, + hamburgerMenu: !!hamburgerMenu + }); + return; + } + const openMenu = () => { menuOverlay.classList.remove('opacity-0', 'invisible'); hamburgerMenu.classList.remove('translate-x-full'); @@ -89,20 +98,22 @@ }; // Toggle button click - if (menuToggle) { - menuToggle.addEventListener('click', (e) => { - e.stopPropagation(); - if (menuOverlay.classList.contains('opacity-0')) { - openMenu(); - } else { - closeMenu(); - } - }); - } + menuToggle.addEventListener('click', (e) => { + e.preventDefault(); + e.stopPropagation(); + if (menuOverlay.classList.contains('opacity-0')) { + openMenu(); + } else { + closeMenu(); + } + }); // Close button click if (menuClose) { - menuClose.addEventListener('click', closeMenu); + menuClose.addEventListener('click', (e) => { + e.preventDefault(); + closeMenu(); + }); } // Close on ESC key @@ -115,7 +126,9 @@ // Close when clicking menu links const menuLinks = hamburgerMenu.querySelectorAll('a'); menuLinks.forEach(link => { - link.addEventListener('click', closeMenu); + link.addEventListener('click', (e) => { + closeMenu(); + }); }); // Close when clicking the overlay (but not the menu panel) @@ -124,5 +137,12 @@ closeMenu(); } }); - }); + } + + // Run when DOM is ready + if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', initializeHamburgerMenu); + } else { + initializeHamburgerMenu(); + } </script> |
