diff options
author | Hsieh Chin Fan <pham@topo.tw> | 2024-09-30 12:09:32 +0800 |
---|---|---|
committer | Hsieh Chin Fan <pham@topo.tw> | 2024-09-30 12:12:13 +0800 |
commit | 9d4032abf1ab33849a7cbc83d51411d73dc8a727 (patch) | |
tree | d762122bc3c597e776829850835059f204938666 /src/dumbymap.mjs | |
parent | c0b1b2b030782e64ac076fb4c592501a969caa2b (diff) |
feat: improve actions in sub-menu
* scroll to focus map/block
* refactor methods in dumbyUtils
* refactor MutationObserver for map
Diffstat (limited to 'src/dumbymap.mjs')
-rw-r--r-- | src/dumbymap.mjs | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/dumbymap.mjs b/src/dumbymap.mjs index faa0621..7a54d73 100644 --- a/src/dumbymap.mjs +++ b/src/dumbymap.mjs | |||
@@ -270,9 +270,7 @@ export const generateMaps = (container, { delay, mapCallback }) => { | |||
270 | new MutationObserver(mutations => { | 270 | new MutationObserver(mutations => { |
271 | const mutation = mutations.at(-1); | 271 | const mutation = mutations.at(-1); |
272 | const target = mutation.target; | 272 | const target = mutation.target; |
273 | const focus = target | 273 | const focus = target.classList.contains('focus'); |
274 | .getAttribute(mutation.attributeName) | ||
275 | .includes('focus'); | ||
276 | const shouldBeInShowcase = | 274 | const shouldBeInShowcase = |
277 | focus && | 275 | focus && |
278 | showcase.checkVisibility({ | 276 | showcase.checkVisibility({ |
@@ -284,7 +282,7 @@ export const generateMaps = (container, { delay, mapCallback }) => { | |||
284 | if (focus) { | 282 | if (focus) { |
285 | dumbymap.utils | 283 | dumbymap.utils |
286 | .renderedMaps() | 284 | .renderedMaps() |
287 | .filter(map => map !== target) | 285 | .filter(map => map.id !== target.id) |
288 | .forEach(map => map.classList.remove('focus')); | 286 | .forEach(map => map.classList.remove('focus')); |
289 | } | 287 | } |
290 | 288 | ||