【问题标题】:Trigger Chrome extension on new tab open在新标签打开时触发 Chrome 扩展
【发布时间】:2015-05-17 23:58:38
【问题描述】:

当打开新标签并加载 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"
  ]
}

如何让它在不点击它的图标的情况下运行?

【问题讨论】:

    标签: javascript google-chrome google-chrome-extension


    【解决方案1】:

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

    然后在后台页面脚本中,您将需要在使用这段代码创建选项卡时进行监听:

    chrome.tabs.onCreated.addListener(function callback)
    

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

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

    【讨论】:

      猜你喜欢
      • 2011-06-26
      • 2012-03-23
      • 2011-11-15
      • 2017-11-14
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多