summaryrefslogtreecommitdiffstats
path: root/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-04-16 15:59:51 +0200
committerDanilo M. <danix@danix.xyz>2026-04-16 15:59:51 +0200
commit13df7e27dba8ebaecd56ffb2c560015360776dc7 (patch)
tree9b0ebca6d5b657e681ae0e844cf3c5801389536f /themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html
parent80286039c0795211162b4ff4b8227f51b39fd918 (diff)
downloaddanixxyz-13df7e27dba8ebaecd56ffb2c560015360776dc7.tar.gz
danixxyz-13df7e27dba8ebaecd56ffb2c560015360776dc7.zip
fix: prevent menu flicker when navigating to new page
- Add beforeunload event listener to close menu before page navigation - This prevents the menu from briefly appearing on the new page - Menu state is explicitly set to false before unload - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Diffstat (limited to 'themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html')
-rw-r--r--themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html17
1 files changed, 5 insertions, 12 deletions
diff --git a/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html b/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html
index 02e6d0d..caa6c6d 100644
--- a/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html
+++ b/themes/danix-xyz-hacker/layouts/partials/hamburger-menu.html
@@ -73,18 +73,11 @@
</div>
<script>
- // Make menuOpen accessible from the menu toggle button
- document.addEventListener('DOMContentLoaded', () => {
- const menuToggle = document.getElementById('menu-toggle');
- if (menuToggle && window.__alpineInstances) {
- menuToggle.addEventListener('click', (e) => {
- e.preventDefault();
- // Find the Alpine component and toggle it
- const overlay = document.querySelector('[x-data*="menuOpen"]');
- if (overlay && overlay.__x) {
- overlay.__x.$data.menuOpen = !overlay.__x.$data.menuOpen;
- }
- });
+ // Close menu before page navigation to prevent flicker
+ window.addEventListener('beforeunload', () => {
+ const overlay = document.querySelector('[x-data*="menuOpen"]');
+ if (overlay && overlay.__x) {
+ overlay.__x.$data.menuOpen = false;
}
});
</script>