fix(ui): bulletproof inline touch handlers and cache-busting for infobox buttons #13

Merged
andre merged 1 commit from a1/fix-infobox-inline-cache into main 2026-09-27 18:12:20 +02:00
Owner

Zusammenfassung

  • Root Cause Identifikation: Auf mobilen Browsern (Chrome auf Android Tablet) verhinderte die bisherige aggressive Cloudflare/Server-Cache-Konfiguration (max-age=14400) das Laden der aktualisierten JavaScript- und CSS-Dateien. Zudem fehlte Cache-Busting für statische Subressourcen.
  • Inline Touch Handlers: Synchroner window.toggleFieldInfo Handler direkt im <head> sowie inline onclick und ontouchend Attribute auf allen 7 .field-info-btn Elementen. Keine Latenz oder Abhängigkeit von nachgeladenem JS.
  • Cache-Busting & Headers: ?v=20260927-1830 Query-Parameter für style.css und studio.js. Cache-Control: no-cache, no-store, must-revalidate für HTML und public, max-age=0, must-revalidate für CSS/JS.
  • Hit-Target & Styling: Min 48×48px unsichtbares Touch-Hit-Target per ::before Pseudo-Element, visuelles Tap-Feedback via :active.
  • Gating-Preview: URL-Parameter ?access=full / ?preview=1 ermöglicht das Testen aller Tabs ohne Authentifizierungs-Session.
  • Tests: Alle 49 Contract- und Integration-Tests grün.
## Zusammenfassung - **Root Cause Identifikation:** Auf mobilen Browsern (Chrome auf Android Tablet) verhinderte die bisherige aggressive Cloudflare/Server-Cache-Konfiguration (`max-age=14400`) das Laden der aktualisierten JavaScript- und CSS-Dateien. Zudem fehlte Cache-Busting für statische Subressourcen. - **Inline Touch Handlers:** Synchroner `window.toggleFieldInfo` Handler direkt im `<head>` sowie inline `onclick` und `ontouchend` Attribute auf allen 7 `.field-info-btn` Elementen. Keine Latenz oder Abhängigkeit von nachgeladenem JS. - **Cache-Busting & Headers:** `?v=20260927-1830` Query-Parameter für `style.css` und `studio.js`. `Cache-Control: no-cache, no-store, must-revalidate` für HTML und `public, max-age=0, must-revalidate` für CSS/JS. - **Hit-Target & Styling:** Min 48×48px unsichtbares Touch-Hit-Target per `::before` Pseudo-Element, visuelles Tap-Feedback via `:active`. - **Gating-Preview:** URL-Parameter `?access=full` / `?preview=1` ermöglicht das Testen aller Tabs ohne Authentifizierungs-Session. - **Tests:** Alle 49 Contract- und Integration-Tests grün.
fix(ui): bulletproof inline touch handlers and cache-busting for infobox buttons
All checks were successful
Unit & Contract Tests / Node.js Contract Tests (pull_request) Successful in 8s
c57b4b77b3
andre merged commit 3cbaff1b98 into main 2026-09-27 18:12:20 +02:00
andre deleted branch a1/fix-infobox-inline-cache 2026-09-27 18:12:20 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
andre/kurven-schule-partner!13
No description provided.