scripting

向网站中注入 JavaScript 与 CSS。该 API 提供了两种注入内容的方法:

备注: Chrome 限制该 API 仅在 Manifest V3 中可用。Firefox 和 Safari 在 Manifest V2 和 V3 中均支持该 API。

此 API 需要 "scripting" 权限以及要将 JavaScript 或 CSS 注入到的标签页目标的主机权限

或者,你也可以通过请求 "activeTab" 权限临时地在活动标签页中获取权限,并且仅能在一个明确的用户操作的返回中使用该 API。不过你仍然需要 "scripting" 权限。

类型

scripting.ContentScriptFilter

指定通过 scripting.getRegisteredContentScripts() 检索或通过 scripting.unregisterContentScripts() 注销的脚本的 ID。

scripting.ExecutionWorld

指定通过 scripting.executeScript() 注入或通过 scripting.registerContentScripts() 注册的脚本的执行环境。

scripting.InjectionTarget

注入目标的详细信息。

scripting.RegisteredContentScript

需要注册或已注册的内容脚本的详细信息。

函数

scripting.executeScript()

将 JavaScript 代码注入页面。

scripting.getRegisteredContentScripts()

获取已注册的内容脚本的列表。

scripting.insertCSS()

将 CSS 注入页面。

scripting.registerContentScripts()

为未来的页面加载注册内容脚本。

scripting.removeCSS()

移除之前通过 scripting.insertCSS() 注入的 CSS。

scripting.updateContentScripts()

更新已注册的一个或多个内容脚本。

scripting.unregisterContentScripts()

注销一个或多个内容脚本。

浏览器兼容性

BCD tables only load in the browser

备注: 该 API 基于 Chromium 的 chrome.scripting API。