Google chrome extension Chrome页面操作弹出窗口消失
我需要一个页面动作弹出图标出现时,标签有一个特定的网址在地址栏 我的背景页上有这个Google chrome extension Chrome页面操作弹出窗口消失,google-chrome-extension,Google Chrome Extension,我需要一个页面动作弹出图标出现时,标签有一个特定的网址在地址栏 我的背景页上有这个 chrome.tabs.query({url:"MYURL.COM"} , function(tab) { for(i=0;i<tab.length;i++) { console.log(tab[i].id); chrome.pageActi
chrome.tabs.query({url:"MYURL.COM"} , function(tab)
{
for(i=0;i<tab.length;i++)
{
console.log(tab[i].id);
chrome.pageAction.show(tab[i].id);
}
});
chrome.tabs.query({url:MYURL.COM},函数(tab)
{
对于(i=0;i用于侦听您感兴趣的域的新选项卡和选项卡重新加载。原因是background.js页面只加载一次,因此您需要在每次更新页面选项卡时添加一个侦听器,以检查是否应显示页面操作,如下所示:
chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
if (tab.url.indexOf("MYURL.COM") > -1) {
chrome.pageAction.show(tabId);
}
});
没有理由像您所做的那样重复每个选项卡。正如Adam所说的,选项卡。onUpdate
事件就是这样做的
无论如何,[似乎我就是那个体验过tabs.onUpdate
事件不总是在应该的时候触发的人-
因此,如果你有同样的问题,你可能想尝试我的修改版本,已证明对我100%可靠
chrome.tabs.onUpdated.addListener(function(tabId, change) {
if (change.status == "complete") {
chrome.tabs.query({active: true}, function(tabs) {
var tab = tabs[0];
// Now do stuff with tab .. Eg:
if (tab.url.indexOf("MYURL.COM") > -1) {
chrome.pageAction.show(tab.id); }
else {
chrome.pageAction.hide(tab.id); }
});
}
});