ServiceWorkerContainer.controller

これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

読み込み専用プロパティであるServiceWorkerContainer インターフェイスの controller は、ServiceWorker オブジェクトの状態が activated なら( ServiceWorkerRegistration.active で返されるのと同じオブジェクト) それを返します。このプロパティはリクエストが強制リフレッシュ(Shift + リフレッシュ)やアクティブな worker がない場合は null を返します。

構文

var myController = navigator.serviceWorker.controller;

ServiceWorker オブジェクト。.

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.');
}

仕様

仕様書 策定状況 コメント
Service Workers
ServiceWorkerRegistration.controller の定義
草案 初期定義

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応40

161

17

442 なし27 なし
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応4040 ?4427 なし4.0

1. From version 16: this feature is behind the Enable service workers preference.

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

ドキュメントのタグと貢献者

このページの貢献者: Uemmra3
最終更新者: Uemmra3,