繁体   English   中英

在新标签页上触发Chrome扩展程序

[英]Trigger Chrome extension on new tab open

打开新标签页并加载html文档时,我需要运行Chrome扩展程序。

扩展程序需要检查新的标签标题,如果它等于预定义的字符串,则标签应关闭。

现在,我已经设法编写可以在单击其图标时使用的扩展名。 但是我想让它在页面加载到新选项卡后无需单击图标即可运行。

这是当前代码。

function getCurrentTabData(callback) {
  var queryInfo = {
    active: true,
    currentWindow: true
  };
  chrome.tabs.query(queryInfo, function(tabs) {
    var tab = tabs[0];
    var title = tab.title;
    var id = tab.id;
    callback(title, id);
  });
}

document.addEventListener('DOMContentLoaded', function() {

  getCurrentTabData(function(title, id) {

    if(title == 'Page title') {
        chrome.tabs.remove(id, function() { });
    }

  });
});

这是我的manifest.json

{
  "manifest_version": 2,

  "name": "Auto close tab",
  "description": "Auto closes tab if title is matched",
  "version": "1.0",

  "browser_action": {
    "default_icon": "icon.png"
  },
  "permissions": [
    "activeTab"
  ]
}

如何在不单击图标的情况下使其运行?

为此,首先需要有一个后台页面来管理扩展状态。 您可以在这里阅读有关内容: https : //developer.chrome.com/extensions/background_pages

然后,在后台页面脚本中,当使用以下代码创建选项卡时,您将需要侦听:

chrome.tabs.onCreated.addListener(function callback)

这是有关此文档: https : //developer.chrome.com/extensions/tabs#event-onCreated

希望这将有助于解决您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM