From 544d71e1ac7d0d0e623cfef18d79642211a951f7 Mon Sep 17 00:00:00 2001 From: cas Date: Fri, 24 Jul 2026 11:10:28 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20infinite=20scroll=20op=20zoekresultaten?= =?UTF-8?q?=20=E2=80=94=20append-based=20batch=20loading=20(50=20per=20bat?= =?UTF-8?q?ch)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - renderZoeken toont alleen eerste 50 items, geen DOM overload meer - IntersectionObserver laadt volgende batches via append (behoudt scrollpositie) - Event delegation voor openAddToMealForMoment (werkt met dynamisch geladen items) - Pagination reset bij nieuw zoekopdracht, categorie-filter, en tab-switch - Sentinel-element onder foodList als IntersectionObserver target - searchSentinel/sentinel CSS + searchLoading styling --- index.html | 191 ++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 145 insertions(+), 46 deletions(-) diff --git a/index.html b/index.html index ef80903..df9f937 100644 --- a/index.html +++ b/index.html @@ -252,6 +252,19 @@ body { list-style: none; } +.search-sentinel { + height: 1px; + width: 100%; +} + +.search-loading { + display: flex; + justify-content: center; + padding: 16px; + color: var(--text-muted); + font-size: var(--font-sm); +} + .food-item { background: var(--white); border-radius: var(--radius-sm); @@ -2048,6 +2061,7 @@ button:active, .btn:active, .meal-card-main:active, .dagboek-item:active, .food-
+