Chrome 扩展 V3 注入脚本获取标签页 ID 并关闭 - 代码示例

本文将介绍如何使用 Chrome 扩展 V3 注入脚本,获取当前标签页 ID,并将其发送给后台脚本进行处理,实现关闭标签页的功能。

实现步骤

  1. manifest.json 文件中增加 permissions
"permissions": [
  "tabs"
],
  1. content_scripts 中增加 js 文件:
"content_scripts": [
  {
    "matches": ["<all_urls>"],
    "js": ["content.js"]
  }
],
  1. 创建 content.js 文件,获取标签页 ID 并发送给 background
// 获取当前标签页 ID
const tabId = chrome.tabs.getCurrent((tab) => {
  return tab.id;
});

// 发送消息给 `background`
chrome.runtime.sendMessage({
  type: 'closeTab',
  tabId: tabId
});
  1. background.js 中监听消息并关闭标签页:
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) {
  if (message.type === 'closeTab') {
    chrome.tabs.remove(message.tabId);
  }
});

代码解释

  • content.js 使用 chrome.tabs.getCurrent 获取当前标签页的 ID,并通过 chrome.runtime.sendMessage 发送消息给 background.js

  • background.js 使用 chrome.runtime.onMessage.addListener 监听来自 content.js 的消息,并通过 chrome.tabs.remove 关闭指定 ID 的标签页。

注意:

  • 以上代码仅供参考,实际使用中可能需要根据具体需求进行修改。
  • 确保你的 Chrome 扩展已启用权限 tabs
  • 可以根据需要修改 content_scripts 中的 matches 属性,指定脚本生效的页面。

通过以上步骤,你就可以使用 Chrome 扩展 V3 注入脚本,实现获取标签页 ID 并关闭标签页的功能。

Chrome 扩展 V3 注入脚本获取标签页 ID 并关闭 - 代码示例

原文地址: https://www.cveoy.top/t/topic/nhUn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录