0
我目前正在制作Google Chrome浏览器扩展程序,并且我希望用户能够选择它始终处于打开状态或仅在点击时激活。要做到这一点,我需要一个options.js和一个background.js文件,我有。但是,我很难让他们正确沟通。我尝试使用chrome.storage api,但它不会执行任何操作。如何根据选项获取background.js
这里是我的background.js代码:
chrome.browserAction.onClicked.addListener(function() {
// Send a message to the active tab
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, {"message": tabs[0].url}, function(response));
});
});
chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
if (changeInfo.status == 'complete') {
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
// console.log(tabs.length);
chrome.tabs.sendMessage(tabs[0].id, {"message": tabs[0].url}, function(response) {});
});
}
});
这里是我的options.js代码:
如果该行为被设置为 “点击”,我只想要执行的部分是chrome.browserAction.onClicked.addListener
。如果行为设置为'alwaysOn',那么我只想要执行chrome.tabs.onUpdated.addListener
部分。就调试而言,这两个块都以他们应有的方式工作。我只需要知道如何根据当前选项来运行其中一个或另一个。