fix(cache): SW network-first für eigene Files
- Eigene HTML/JS/CSS werden IMMER frisch vom Netz geladen (kein Cache-First mehr) - Map-Tiles (OSM/cartocdn) bleiben für Offline im Cache - Cache-Version v3 → v4 (alte Bug-Caches werden in activate() gelöscht) - Update-Hook: Browser fragt nach Reload wenn neuer SW aktiviert wird - Fix: Updates an GitHub Pages sind sofort für alle sichtbar
This commit is contained in:
+17
-2
@@ -187,11 +187,26 @@ h1 { font-size:42px; margin:0 0 8px 0; font-weight:700; letter-spacing:-1px; col
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
// PWA Service Worker — Network-First Strategie (Updates kommen sofort durch)
|
||||
if ("serviceWorker" in navigator) {
|
||||
window.addEventListener("load", function() {
|
||||
navigator.serviceWorker.register("./sw.js")
|
||||
.then(function(r){ console.log("[PWA] SW registered:", r.scope); })
|
||||
.catch(function(e){ console.warn("[PWA] SW registration failed:", e); });
|
||||
.then(function(reg) {
|
||||
console.log("[PWA] SW registered:", reg.scope);
|
||||
reg.addEventListener("updatefound", function() {
|
||||
var newSw = reg.installing;
|
||||
if (!newSw) return;
|
||||
newSw.addEventListener("statechange", function() {
|
||||
if (newSw.state === "activated" && navigator.serviceWorker.controller) {
|
||||
console.log("[PWA] Neue Version aktiviert");
|
||||
if (window.confirm("🔄 Neue Version der JGA-Seite verfügbar — jetzt neu laden?")) {
|
||||
window.location.reload();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
})
|
||||
.catch(function(err) { console.warn("[PWA] SW registration failed:", err); });
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user