contentScripts.RegisteredContentScript

RegisteredContentScript 是透過呼叫 contentScripts.register() 返回的,代表該呼叫中註冊的內容指令碼。

它定義了一個名為 unregister() 的函式,可用於取消註冊內容指令碼。

注意: 如果此物件被銷燬(例如,因為它超出了作用域),則內容指令碼會自動取消註冊,因此只要您希望內容指令碼保持註冊狀態,就應該保留對此物件的引用。

方法

unregister()

取消註冊此物件所代表的內容指令碼。

示例

此程式碼在瀏覽器操作點選時切換已註冊的內容指令碼

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);

瀏覽器相容性