scripting.registerContentScripts()
注册一个或多个内容脚本。
备注: 该方法在 Chrome 和 Firefox 101 的 Manifest V3 或更高版本中可用。在 Firefox 102+ 中,你也可以在 Manifest V2 中使用该方法。
要使用该方法,你必须取得 "scripting"
权限以及页面的 URL 权限,可以是明确的主机权限,也可以使用 activeTab 权限。
这是一个返回 Promise
的异步函数。
语法
js
await browser.scripting.registerContentScripts(
scripts // 数组
)
参数
scripts
-
scripting.RegisteredContentScript
数组(array
)。要注册的脚本的列表。
返回值
不带参数兑现的 Promise
,当有错误发生时该 promise 将被拒绝。错误可能发生在脚本解析和文件验证期间,或者在指定的 ID 不存在时。若发生错误则不会注册任何脚本。
示例
该示例注册一个注入文件 "script.js"
的内容脚本:
js
const aScript = {
id: "a-script",
js: ["script.js"],
matches: ["https://example.com/*"],
};
try {
await browser.scripting.registerContentScripts([aScript]);
} catch (err) {
console.error(`无法注册内容脚本:${err}`);
}
浏览器兼容性
BCD tables only load in the browser
备注:
该 API 基于 Chromium 的 chrome.scripting
API。