--- title: ServiceWorkerGlobalScope.onactivate slug: Web/API/ServiceWorkerGlobalScope/onactivate tags: - API - Property - Reference - Service - ServiceWorker - ServiceWorkerGlovalScope - Worker - onactivate translation_of: Web/API/ServiceWorkerGlobalScope/onactivate ---
{{SeeCompatTable}}{{APIRef("Service Workers API")}}

{{domxref("ServiceWorkerGlobalScope")}} インターフェースの onactivate プロパティは、(Service Worker がアクティブになったときの){{Event("activate")}} イベントが発生したとき常に発火されるイベントハンドラーです。これは、Service Worker に制御されたページがリフレッシュされるインストール後に発生します。

構文

ServiceWorkerGlobalScope.onactivate = function(event) { ... };
ServiceWorkerGlobalScope.addEventListener('activate', function(event) { ... });

次のスニペットは、Using Service Workers のものです; 詳細はそちらを見てください。

then.addEventListener('activate', function(event) {
  var cacheWhitelist = ['v2'];

  event.waitUntil(
    caches.forEach(function(cache, cacheName) {
      if (cacheWhitelist.indexOf(cacheName) == -1) {
        return caches.delete(cacheName);
      }
    })
  );
});

仕様

仕様 ステータス コメント
{{SpecName('Service Workers', '#service-worker-global-scope-event-handlers', 'Event Handlers')}} {{Spec2('Service Workers')}} 初期定義。

ブラウザー実装状況

{{CompatibilityTable}}
機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本サポート {{CompatChrome(40.0)}} {{ CompatGeckoDesktop("44.0") }}[1] {{CompatNo}} {{CompatUnknown}} {{CompatNo}}
機能 Android Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
基本サポート {{CompatUnknown}} {{ CompatGeckoMobile("44.0") }} {{ CompatVersionUnknown }} {{CompatNo}} {{CompatUnknown}} {{CompatNo}} {{CompatChrome(40.0)}}

[1] Service workers(と Push) は、Firefox 45 延長サポート版(ESR)では使用できません。

関連項目