background

種類 Object
必須 いいえ
"background": {
  "scripts": ["background.js"]
}

background を使って拡張機能に 1 つ以上のバックグラウンドスクリプトや、オプションとしてバックグラウンドページを含めます。

バックグラウンドスクリプトは、特定のウェブページやブラウザーウィンドウとは独立した、長い期間の状態や、長い期間の操作を維持する必要があるコードを置く場所です。

バックグラウンドスクリプトは拡張機能が読み込まれるとすぐに読み込まれて、拡張機能が無効化やアンインストールされるまで読み込まれたままになります。スクリプト内では、必要な permissions を要求している限り、あらゆる WebExtension APIs を使用できます

詳しくは 拡張機能の中身の「バックグラウンドページ」の節を見てください。

background キーは次の 2 つのプロパティ(両方ともオプションです)のうち 1 つを持つオブジェクトです:

"scripts"

文字列配列であり、各要素は JavaScript ファイルへのパスです。パスは manifest.json を基準にした相対パスです。これらは、拡張機能に含まれるバックグラウンドスクリプトです。

これらのスクリプトは、同じグローバル window を共有します。

これらのスクリプトは、配列内の出現順で読み込まれます。

Firefox 50 より前のバージョンにはこれに影響するバグがあることに注意してください。Firefox のデバッガーが開いているときは、必ずしも配列内の出現順でスクリプトが読み込まれるとは限りません。このバグに対処するには、"page" プロパティを使い、そのページから <script> タグによってバックグラウンドスクリプトを読み込んでください。このバグは Firefox 50 で修正され、それ以降は常に配列内の出現順でスクリプトが読み込まれます。

注: <script> タグを使って外部からスクリプトを取り込む場合 (例: <script src = "https://code.jquery.com/jquery-1.7.1.min.js">)、拡張機能の manifest.json で content_security_policy キーを変更する必要があります。

"page"

"scripts" を指定したときは、スクリプトを実行するための空のバックグラウンドページが作られます。

もしバックグラウンド ページに何か内容を持たせたい場合、そのページを "page" により指定することができます。

このプロパティを使うときは、"scripts" を使ってバックグラウンドスクリプトを指定することはできませんが、通常のウェブページと同じように、バックグラウンドページ内からスクリプトを読み込むことができます。

  "background": {
    "scripts": ["jquery.js", "my-background.js"]
  }

2つのバックグラウンドスクリプトを読み込みます。

  "background": {
    "page": "my-background.html"
  }

カスタムのバックグラウンドページを読み込みます。

ブラウザ実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxOperaAndroid 版 Firefox
backgroundChrome 完全対応 ありEdge 完全対応 14Firefox 完全対応 48Opera 完全対応 ありFirefox Android 完全対応 48
pageChrome 完全対応 ありEdge 完全対応 14Firefox 完全対応 48Opera 完全対応 ありFirefox Android 完全対応 48
persistentChrome 完全対応 ありEdge 完全対応 14
補足
完全対応 14
補足
補足 The 'persistent' property is mandatory.
Firefox 部分対応 48
補足
部分対応 48
補足
補足 Only persistent pages are supported.
補足 Before version 66, Firefox would log a warning even if the value was set to true.
Opera 完全対応 ありFirefox Android 部分対応 48
補足
部分対応 48
補足
補足 Only persistent pages are supported.
補足 Before version 66, Firefox would log a warning even if the value was set to true.
scriptsChrome 完全対応 ありEdge 完全対応 14Firefox 完全対応 48
補足
完全対応 48
補足
補足 Before Firefox 50, when the debugger is open, scripts are not always loaded in the order given in the array.
Opera 完全対応 ありFirefox Android 完全対応 48
補足
完全対応 48
補足
補足 Before Firefox 50, when the debugger is open, scripts are not always loaded in the order given in the array.

凡例

完全対応  
完全対応
部分対応  
部分対応
実装ノートを参照してください。
実装ノートを参照してください。