我需要在打开新标签页并加载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"
]
}
如何让它在没有点击它的图标的情况下运行?
答案 0 :(得分:15)
首先要完成此任务,您需要有一个背景页面来管理您的扩展状态。您可以在此处阅读:https://developer.chrome.com/extensions/background_pages
然后在后台页面脚本中,您将需要在使用以下代码创建选项卡时进行侦听:
chrome.tabs.onCreated.addListener(function callback)
以下是此文档:https://developer.chrome.com/extensions/tabs#event-onCreated
希望这有助于解决您的问题。