scripting
向网站中注入 JavaScript 与 CSS。该 API 提供了两种注入内容的方法:
- 用于一次性注入的
scripting.executeScript()、scripting.insertCSS()和scripting.removeCSS()方法。 - 用于用于动态注册内容脚本的
scripting.registerContentScripts()方法,随后你将可以使用scripting.getRegisteredContentScripts()获取、使用scripting.unregisterContentScripts()注销注入的脚本。
备注: 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()-
注销一个或多个内容脚本。
浏览器兼容性
Loading…
备注:
此 API 基于 Chromium 的 chrome.scripting API。