--- title: content_scripts slug: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts tags: - Add-ons - Extensions - WebExtensions translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts ---
タイプ |
Array |
---|---|
必須か | いいえ |
例 |
"content_scripts": [ { "matches": ["*://*.mozilla.org/*"], "js": ["borderify.js"] } ] |
与えられたパターンに URL がマッチしているページにコンテンツスクリプトをロードすることをブラウザに教えます。
このキーは配列です。それぞれのアイテムは以下の条件を満たすオブジェクトです:
js
と css
というキーを入れてもよく、それはマッチしたページに読み込まれるスクリプトを列挙します入れることのできるキーの詳細は下記の表にあります。
名前 | 型 | 説明 |
---|---|---|
all_frames |
Boolean |
デフォルトは |
css |
Array |
manifest.json からの相対パスの配列で、マッチしたページに挿入される CSS ファイルを参照する。 ファイルは指定した順で、DOM が読み込まれる前に挿入される。 |
exclude_globs |
Array |
ワイルドカードを含む文字配列。下記の URL パターンにマッチする を見てください。 |
exclude_matches |
Array |
マッチパターンの配列。下記の URL パターンにマッチするを見てください。 |
include_globs |
Array |
ワイルドカードを含む文字配列。下記の URL パターンにマッチする を見てください。 |
js |
Array |
manifest.json からの相対パスの配列で、マッチしたページに挿入される JavaScript ファイルを参照する。 ファイルは指定した順でに挿入される。つまり、例えば、ここで jQuery をインクルードしてから他のコンテンツスクリプトを読み込むには、このようにします:
|
match_about_blank |
Boolean |
コンテンツスクリプトを This is especially useful to run scripts in empty iframes , whose URL is 例えば、 以下のような "content_scripts": [ { "js": ["my-script.js"], "matches": ["https://example.org/"], "match_about_blank": true, "all_frames": true } ] ユーザーが
|
matches |
Array |
マッチパターンの配列。下記の URLパターンにマッチする を見てください。 これは唯一の必須なキーです。 |
run_at |
String |
This option determines when the scripts specified in
The default value is |
"content_scripts"
キーは URL マッチングを元にしてコンテンツスクリプトをドキュメントに添付します: ドキュメントの URL がキーに指定されたものとマッチしたら、スクリプトは添付されます。"content_scripts"
内には指定に使える 4 つのキーワードがあります:
これらのプロパティにマッチするには、URL は配列内で少なくとも 1 つの項目にマッチしなれりばなりません。例えばこのようなプロパティが与えられたら:
"matches": ["*://*.example.org/*", "*://*.example.com/*"]
"http://example.org/" と "http://example.com/" の両方がマッチします。
matches
は唯一必須のキーなため、その他の 3 つのキーはそれ以降のマッチ URL の制限に使われます。全体のキーにマッチするために、URL は下記のようでなければなりません:
matches
プロパティにマッチしているinclude_globs
があれば、それにマッチするexclude_matches
があれば、それにマッチしないexclude_globs
があれば、それにマッチしないglob は単にワイルドカードを含むことのある文字列です。ワイルドカードには 2種類あって、glob内に組み合わせることができます:
例えば: "*na?i"
は "illuminati"
と "annunaki"
にマッチし、"sagnarelli"
にはマッチしせん
"content_scripts": [ { "matches": ["*://*.mozilla.org/*"], "js": ["borderify.js"] } ]
これは "borderify.js" という 1 つのコンテンツスクリプトを、HTTP か HTTPS のいずれかで配布される、"mozilla.org" かそのサブドメインのページに挿入します。
"content_scripts": [ { "exclude_matches": ["*://developer.mozilla.org/*"], "matches": ["*://*.mozilla.org/*"], "js": ["jquery.js", "borderify.js"] } ]
これは 2 つのコンテンツスクリプトを、HTTP か HTTPS のいずれかで配布される、 "mozilla.org" かそのサブドメイン(ただし "developer.mozilla.org" を除く)のページに挿入します。
コンテンツスクリプトは同じ DOM を見て、配列の順番どおりに挿入されます。よって "borderify.js" からは "jquery.js" によって追加されたグローバル変数が見えます。
{{Compat("webextensions.manifest.content_scripts")}}