Google chrome extension Chrome扩展:将打开的选项卡与background.js中加载的选项卡匹配
我有一个Chrome分机。我需要将一个变量传递给打开的选项卡,然后在该选项卡的网页完成加载后使该变量可用。我需要能够唯一地匹配打开的选项卡和加载的选项卡Google chrome extension Chrome扩展:将打开的选项卡与background.js中加载的选项卡匹配,google-chrome-extension,Google Chrome Extension,我有一个Chrome分机。我需要将一个变量传递给打开的选项卡,然后在该选项卡的网页完成加载后使该变量可用。我需要能够唯一地匹配打开的选项卡和加载的选项卡 chrome.browserAction.onClicked.addListener(function(tab) { url = "my_url"; unique_id = "some id"; // I need to pass this on chrome.tabs.create({ url: url }, fun
chrome.browserAction.onClicked.addListener(function(tab) {
url = "my_url";
unique_id = "some id"; // I need to pass this on
chrome.tabs.create({ url: url }, function(tab){});
// I cannot use any global vars because this function actually loops and opens lots of tabs.
});
// Called when page has finished loading
chrome.webNavigation.onCompleted.addListener(function(tab) {
if(tab.frameId == 0){
// I need to identify the tab (unique_id) that was created in chrome.browserAction.onClicked.addListener()
// tab.url won't work because it's different if the orginal url was redirected
}
});
在浏览器会话中具有唯一的选项卡ID
chrome.browserAction.onClicked.addListener(function(tab) {
url = "my_url";
chrome.tabs.create({ url: url }, function(tab){
unique_id = tab.id; // I need to pass this on
});
});
// Called when page has finished loading
chrome.webNavigation.onCompleted.addListener(function(details) {
if(details.frameId == 0){
unique_id = details.tabId;
}
});
他们的身份证不匹配。第一个tab.id是单击按钮的选项卡的id。第二个tabId是新创建和加载的tab的ID。如果将“unique_ID=tab.ID;”移动到函数(tab){}中,它就会工作。