在新标签页中打开Chrome扩展程序

时间:2012-03-06 01:26:00

标签: google-chrome google-chrome-extension google-chrome-devtools

我已经实施了Chrome扩展程序。想知道popup.html是否可以在新标签页中打开?每次单击页面,弹出窗口都会消失:( ..想知道我是否可以将其粘贴到页面上,或者是否有办法在新页面中打开扩展程序?

2 个答案:

答案 0 :(得分:6)

是的,弹出页面只是一个普通的扩展页面,您可以执行以下操作从后台页面打开一个新的弹出选项卡。每当用户第一次安装扩展程序时,我都会使用它,我打开about页面,你可以为弹出页面做同样的事情。

chrome.tabs.create({url: 'popup.html'}) 

对于我的一个扩展程序My Hangouts,我在弹出窗口中有一个小的“打开选项卡”按钮,我绑定该链接的click事件来执行此操作:

chrome.tabs.create({url: chrome.extension.getURL('popup.html#window')});

我之所以通过哈希是因为我想在用户弹出窗口时添加更多内容,因为可以使用更多的空间。

在弹出窗口中,我使用普通的JavaScript来区分我是在新标签页中打开标签还是在以下常规页面中打开标签:

if (window.location.hash == '#window') {
  this.displayAsTab = true;
}

你可以做这样的技巧,让你的扩展用户体验更好。

答案 1 :(得分:1)

这是同一个问题:Chrome Extension: onclick extension icon, open popup.html in new tab

使用:

chrome.tabs.create({'url': chrome.extension.getURL('popup.html')}, function(tab) {
    // Tab opened.
});

属性“固定”以粘贴标签。