diff options
| author | 2025-08-27 01:37:04 +0700 | |
|---|---|---|
| committer | 2025-08-27 01:37:04 +0700 | |
| commit | ea8c6da9b8bafa1d4e5fe5a77fb306006db7d6f6 (patch) | |
| tree | 02377a21a94ded0a33315817d139f739c75a7013 /views/pages/blog-page.html | |
| parent | b0ab2ed92870d8c651267db10d68eb695da2ec62 (diff) | |
| download | web-ea8c6da9b8bafa1d4e5fe5a77fb306006db7d6f6.tar.gz web-ea8c6da9b8bafa1d4e5fe5a77fb306006db7d6f6.zip | |
feat: update galleries on resize (with smooth animations this time)
Diffstat (limited to 'views/pages/blog-page.html')
| -rw-r--r-- | views/pages/blog-page.html | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/views/pages/blog-page.html b/views/pages/blog-page.html index 83860d7..d685fda 100644 --- a/views/pages/blog-page.html +++ b/views/pages/blog-page.html @@ -12,6 +12,10 @@ height: 100% !important; } </style> + +<script> + const galleryMap = new Map(); +</script> {{ end }} {{ define "body" }} @@ -70,10 +74,18 @@ {{ .MapLocationAreaMeters }} )}); + let resizeTimeout; window.addEventListener('resize', function() { - setTimeout(() => { + clearTimeout(resizeTimeout); + resizeTimeout = setTimeout(() => { map.invalidateSize(); - }, 100); + var oldGalleryMap = new Map(galleryMap); + oldGalleryMap.forEach((createFunc, g, map) => { + galleryMap.delete(g); + g.destroy(); + createFunc(); + }); + }, 300); }); </script> {{- end }} |