在我的清单里有这个:
"popup": "1_options.html"在上面的html文件中,我有以下代码
var saved_email = localStorage['saved_email'];
if (saved_email !== undefined || saved_email != "a@a.com")
{
chrome.tabs.create({url: '0_register.html'});
}它完全按照我想要的方式工作,它用register.html打开了一个新的标签,但在右上角仍然有打开的弹出窗口:( (1_options.html)
有没有办法在我打开这个新选项卡时自动关闭弹出窗口?
谢谢!瑞安
发布于 2011-07-15 21:58:54
您是否尝试过:
self.close();发布于 2011-07-15 22:05:09
有几种方法可以做到这一点,但最简单的方法是调用:
window.close();您甚至可以在创建选项卡时在回调函数中执行此操作。
chrome.tabs.create({url: '0_register.html'}, function() {
window.close();
});您还可以在后台脚本中添加侦听器以检查选项卡更新,如果新选项卡是注册窗口,则可以删除弹出窗口:
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if(changeInfo.status == "loading") {
if(tab.url == "chrome-extension://[extension-id]/0_register.html") {
chrome.tabs.remove(tabId);
}
}
});发布于 2011-11-15 04:32:23
chrome.tabs.create({url: '0_register.html', selected: true});如果您不介意新选项卡在创建时被选中,这也会强制关闭弹出窗口。
https://stackoverflow.com/questions/6707958
复制相似问题