The onactivate property of the ServiceWorkerGlobalScope interface is an event handler fired whenever an activate event occurs (when the service worker activates). This happens after installation, when the page to be controlled by the service worker refreshes.


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


The following snippet comes from Using Service Workers; go there for more details.

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

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


Specification Status Comment
Service Workers
The definition of 'Event Handlers' in that specification.
Working Draft Initial definition

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support40 ?441 No24 No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support4040 ?4424 No4.0

1. Service workers (and Push) have been disabled in the Firefox 45 and 52 Extended Support Releases (ESR).

See also

Document Tags and Contributors

Contributors to this page: fscholz, chrisdavidmills, jpmedley, Sebastianz, kscarfone
Last updated by: fscholz,