From 4863b98967262ecc1dcbb409bcdbcd6feb17f588 Mon Sep 17 00:00:00 2001 From: HikeMap User Date: Wed, 31 Dec 2025 22:54:55 -0600 Subject: [PATCH] Fix admin close button by deferring event listener attachment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Admin panel HTML is created after JavaScript runs - Used setTimeout to defer event binding until DOM is ready- Close button now properly attaches and functions 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- index.html | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/index.html b/index.html index d3f961e..bc1337f 100644 --- a/index.html +++ b/index.html @@ -5903,20 +5903,22 @@ document.getElementById('navTab').addEventListener('click', () => switchTab('navigate')); document.getElementById('adminTab').addEventListener('click', () => switchTab('admin')); - // Admin overlay close button - const adminCloseBtn = document.getElementById('adminCloseBtn'); - if (adminCloseBtn) { - adminCloseBtn.addEventListener('click', () => { - const adminOverlay = document.querySelector('.admin-panel-overlay'); - if (adminOverlay) { - adminOverlay.classList.remove('active'); - } - // Remove active class from admin tab - document.getElementById('adminTab').classList.remove('active'); - // Switch back to edit tab - switchTab('edit'); - }); - } + // Admin overlay close button - defer to ensure DOM element exists + setTimeout(() => { + const adminCloseBtn = document.getElementById('adminCloseBtn'); + if (adminCloseBtn) { + adminCloseBtn.addEventListener('click', () => { + const adminOverlay = document.querySelector('.admin-panel-overlay'); + if (adminOverlay) { + adminOverlay.classList.remove('active'); + } + // Remove active class from admin tab + document.getElementById('adminTab').classList.remove('active'); + // Switch back to edit tab + switchTab('edit'); + }); + } + }, 0); // Password dialog document.getElementById('passwordSubmit').addEventListener('click', checkPassword);