From 54373cfe96279e624bf71b8b48eefeec901aa5ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20P?= Date: Sat, 11 Oct 2025 16:10:52 +0200 Subject: [PATCH] Fix stupid popup button... --- js/map.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/js/map.js b/js/map.js index f600a05..8e03dad 100644 --- a/js/map.js +++ b/js/map.js @@ -6,6 +6,8 @@ import { AppState } from './state.js'; const Map = {}; +Map.domParser = new DOMParser; + Map.init = function(mapContainerId) { let baseMap = new L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', { maxNativeZoom : config.map.maxZoom, @@ -22,15 +24,17 @@ Map.init = function(mapContainerId) { baseMap.addTo(map); config.markers.forEach(marker => { - L.marker(marker.coords).addTo(map) - .bindPopup(marker.popup) - .openPopup(); - - let btn = document.querySelector(`#${marker.id}`); - btn.addEventListener('click', () => { + const popup = this.domParser.parseFromString(marker.popup, 'text/html') + .querySelector('div'); + popup.querySelector('button').onclick = () => { Scene.openScene(marker); map.getContainer().classList.toggle('d-none'); - }); + }; + + L.marker(marker.coords).addTo(map) + .bindPopup(popup) + .openPopup(); + }); AppState.map = map;