如何在不创建新标签的情况下使用Window.open在Chrome中打开mailto链接?

时间:2011-08-17 20:14:12

标签: javascript google-chrome google-chrome-extension browser-extension

我正在创建Google Chrome扩展程序,并尝试使用(window.open)打开自定义网址方案,而无需打开新的空白标签。为了论证,我们试试'mailto'url scheme。

我的代码:

window.open("mailto://Bob Lawblah", '_self');

不幸的是,即使我指定了'_self',这也会打开一个新的空白标签以及打开默认邮件程序。根据{{​​3}},我似乎没有任何错误。

有关如何在打开“mailto”链接时没有打开额外标签的任何想法?

2 个答案:

答案 0 :(得分:0)

由于这是一个chrome扩展,因此对于_self和其他目标的含义有不同的参考框架。而不是尝试使用mailto,如何将它们发送到网站的“与我联系”页面?

我认为这为最终用户提供了更轻松的可用性。老实说,我没有默认的邮件应用程序,即使我确实有Outlook或一些专用的应用程序,我也不会使用它,因为GMail很棒(个人喜好,但我敢打赌,我并不孤单)。例如,我使用扩展名来更改所有mailto链接以打开GMail,以便我可以通过它向某人发送电子邮件。我的扩展程序不会修改您的扩展程序javascript或mailto链接(沙盒的一部分)。

通过“与我联系”页面,您不仅可以隐藏自己的电子邮件地址,还可以让人们根据您的条款与您联系(无附件等)。

答案 1 :(得分:0)

由于您处于Chrome扩展程序上下文中,因此您应该使用chrome.tabs API。如果你有一个额外的标签,你可以通过http://code.google.com/chrome/extensions/tabs.html#method-remove

关闭它