aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dumbymap.mjs19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/dumbymap.mjs b/src/dumbymap.mjs
index 6483411..2e1f7d2 100644
--- a/src/dumbymap.mjs
+++ b/src/dumbymap.mjs
@@ -353,26 +353,27 @@ export const generateMaps = (container, { delay, mapCallback }) => {
353 return 353 return
354 } 354 }
355 355
356 // Work with Mutation Observer
357 const observer = mapFocusObserver()
358 mapFocusObserver().observe(mapElement, {
359 attributes: true,
360 attributeFilter: ['class'],
361 attributeOldValue: true
362 })
363 onRemove(mapElement, () => observer.disconnect())
364
356 // Execute callback from caller 365 // Execute callback from caller
357 mapCallback?.call(this, mapElement) 366 mapCallback?.call(this, mapElement)
358 const markers = geoLinks 367 const markers = geoLinks
359 .filter(link => !link.targets || link.targets.includes(mapElement.id)) 368 .filter(link => !link.targets || link.targets.includes(mapElement.id))
360 .map(link => ({ xy: link.xy, title: link.url.pathname })) 369 .map(link => ({ xy: link.xy, title: link.url.pathname }))
361 370
371 // FIXME Here may cause error
362 // Add markers with Geolinks 372 // Add markers with Geolinks
363 renderer.addMarkers(markers) 373 renderer.addMarkers(markers)
364 mapElement 374 mapElement
365 .querySelectorAll('.marker') 375 .querySelectorAll('.marker')
366 .forEach(marker => htmlHolder.anchors.push(marker)) 376 .forEach(marker => htmlHolder.anchors.push(marker))
367
368 // Work with Mutation Observer
369 const observer = mapFocusObserver()
370 mapFocusObserver().observe(mapElement, {
371 attributes: true,
372 attributeFilter: ['class'],
373 attributeOldValue: true
374 })
375 onRemove(mapElement, () => observer.disconnect())
376 } 377 }
377 378
378 // Set unique ID for map container 379 // Set unique ID for map container