contentScripts.RegisteredContentScript

一个 RegisteredContentScript 是通过调用 contentScripts.register() 返回的,它代表该调用中注册的内容脚本。

它定义了一个名为 unregister() 的单一函数,该函数可用于注销内容脚本。

注意: 如果此对象被销毁(例如,因为它超出了作用域),则内容脚本将自动注销,因此您应在想要让内容脚本保持注册的整个期间内保留对该对象的引用。

方法

unregister()

注销此对象所代表的内容脚本。

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

示例

此代码在浏览器操作点击时切换注册的内容脚本

js
let registered = null;

async function register() {
  registered = await browser.contentScripts.register({
    matches: ["*://*.org/*"],
    js: [
      {
        code: "document.body.innerHTML = '<h1>This page has been eaten<h1>'",
      },
    ],
    runAt: "document_idle",
  });
}

function toggle() {
  if (registered) {
    registered.unregister();
    registered = null;
  } else {
    register();
  }
}

browser.browserAction.onClicked.addListener(toggle);