fix: mobile img viewer scroll issue
the3ash committed
Jul 12, 2025 at 00:34 UTC
f4f8e82399d487d59554d2f5cc3244402376022f
1 file changed
+12
src/components/ui/ImageViewer.astro
+12
@@ -18,6 +18,7 @@
18
viewer?.classList.add('active')
19
document.body.classList.add('image-viewer-open')
20
document.body.style.overflow = 'hidden'
21
+ document.body.dataset.scrollY = window.scrollY.toString()
22
if (viewer) {
23
viewer.style.cursor = 'auto'
24
setTimeout(() => {
@@ -59,6 +60,17 @@
60
61
viewer?.addEventListener('click', hideImage)
62
63
+ // Prevent touch scroll in image viewer
64
+ viewer?.addEventListener(
65
+ 'touchmove',
66
+ (e) => {
67
+ if (viewer.classList.contains('active')) {
68
+ e.preventDefault()
69
+ }
70
+ },
71
+ { passive: false }
72
+ )
73
+
74
document.addEventListener('keydown', (e) => {
75
if (e.key === 'Escape' && viewer.classList.contains('active')) {
76
hideImage()