--- title: 后台 - background slug: Mozilla/Add-ons/WebExtensions/manifest.json/background tags: - 后台 - 附加组件 translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/background ---
Type | Object |
---|---|
强制性 | 不强制 |
示例 |
"background": { "scripts": ["background.js"] } |
通过background 键来给您的扩展程序引入一个或者多个后台脚本文件,以及一个可选的后台页面文件。
后台脚本放置的是需要长期保持状态,或者需要执行长期的操作,并且与任意特定网页或者浏览器窗口的生命周期无关的代码。
后台脚本会在扩展程序被加载后立即被加载,并且一直保持被加载状态,只有在扩展程序被禁止或者卸载的时候才停止运行。只要您获得了必要的许可permissions,您可以在该脚本中使用任意的扩展程序API。
浏览Anatomy of a WebExtension中的Background pages部分以获取更多的细节。
background 键最多只能拥有以下的两个属性,两个属性都是可选属性:
"scripts" |
一个字符串数组,数组中的每个字符串都是JavaScript源文件相对于manifest.json的相对路径,JavaScript源文件便是些被包含在扩展程序中的后台脚本文件。 脚本共享相同的全局窗口 脚本按照在数组中的顺序进行加载 注意在低于Firefox 50版本的浏览器下会出现一个问题:当Firefox debugger已经打开时,脚本并不能总是按照数组中定义的顺序进行加载。若要解决这个问题,您可以使用page属性,用<script>标签将后台脚本文件从页面中加载进来。这个问题已经在Firefox 50中被修复。 |
"page" |
如果您仅仅指定了“scripts”属性,将生成一个空白的页面来运行指定的脚本。 如果您需要在页面中显示某些特定的内容,您可以使用“page”属性来定义自己的页面。 如果您使用此属性,您仍然可以使用“script”属性来指定后台脚本,但您也可以就像在普通网页中一样在页面中包含自己的脚本。 |
加载2个后台脚本文件.
"background": { "scripts": ["jquery.js", "my-background.js"] }
加载1个自定义的后台页面文件.
"background": { "page": "my-background.html" }
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
{{Compat("webextensions.manifest.background", 10)}}