This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The controller
read-only property of the ServiceWorkerContainer
interface returns a ServiceWorker
object if its state is activated
(the same object returned by ServiceWorkerRegistration.active
). This property returns null
if the request is a force refresh (Shift + refresh) or if there is no active worker.
var myController = navigator.serviceWorker.controller;
A ServiceWorker
object.
if ('serviceWorker' in navigator) { // Do a one-off check to see if a service worker's in control. if (navigator.serviceWorker.controller) { console.log('This page is currently controlled by:', navigator.serviceWorker.controller); } else { console.log('This page is not currently controlled ' + 'by a service worker.'); } } else { console.log('Service workers are not supported.'); }
Specification | Status | Comment |
---|---|---|
Service Workers The definition of 'ServiceWorkerRegistration.controller' in that specification. | Editor's Draft | Initial definition |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 40 | (Yes)[2] | 44.0 (44.0)[1] | No support | 27 | No support |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | 40 | 40 | 44.0 (44.0) | (Yes) | No support | 27 | No support |
[1] Service workers (and Push) have been disabled in the Firefox 45 and 52 Extended Support Releases (ESR.)
[2] Service workers is available in Microsoft Edge starting EdgeHTML 16 behind a flag.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/controller