ServiceWorkerGlobalScope: contentdelete-Ereignis
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das contentdelete-Ereignis der Schnittstelle ServiceWorkerGlobalScope wird ausgelöst, wenn der User Agent einen Eintrag aus dem indexierten Inhalt entfernt.
Dieses Ereignis kann nicht abgebrochen werden und steigt nicht im DOM-Baum auf.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("contentdelete", (event) => { })
Alternativ können Sie der Event-Handler-Eigenschaft der Schnittstelle einen Wert zuweisen:
oncontentdelete = (event) => { }
Ereignistyp
Ein ContentIndexEvent. Erbt von Event.
Beispiele
Das folgende Beispiel verwendet einen contentdelete-Event-Handler, um zwischengespeicherte Inhalte zu entfernen, die mit dem gelöschten Indexeintrag zusammenhängen.
self.addEventListener("contentdelete", (event) => {
const deletion = caches
.open("cache-name")
.then((cache) =>
Promise.all([
cache.delete(`/icon/${event.id}`),
cache.delete(`/content/${event.id}`),
]),
);
event.waitUntil(deletion);
});
Sie können den Event-Handler auch über die Eigenschaft oncontentdelete einrichten. Beachten Sie jedoch, dass dadurch gegebenenfalls andere über oncontentdelete hinzugefügte Event-Listener ersetzt werden:
self.oncontentdelete = (event) => {
// …
};
Spezifikationen
| Spezifikation |
|---|
| Content Index> # dom-serviceworkerglobalscope-oncontentdelete> |