Html 通过扩展按钮打开teamspeak服务器

Html 通过扩展按钮打开teamspeak服务器,html,google-chrome-extension,Html,Google Chrome Extension,我正在进行一个Chrome扩展项目,点击弹出窗口的一个按钮必须打开我的TeamSpeak服务器 我的按钮的最终HTML代码是: <a href="ts3server://MYSERVER" target="_blank" id="teamspeak"></a> 问题是我的按钮打开一个地址为“ts3”的新空白页server://MYSERVER". 如果我手动复制并粘贴“ts3server://MYSERVER“在Chrome中,它可以随心所欲地打开TeamSpeak

我正在进行一个Chrome扩展项目,点击弹出窗口的一个按钮必须打开我的TeamSpeak服务器

我的按钮的最终HTML代码是:

<a href="ts3server://MYSERVER" target="_blank" id="teamspeak"></a>


问题是我的按钮打开一个地址为“ts3”的新空白页server://MYSERVER". 如果我手动复制并粘贴“ts3server://MYSERVER“在Chrome中,它可以随心所欲地打开TeamSpeak软件。

这可以通过添加(或删除)一个不可见的iframe来实现

function openExternalLink(uri) {
  var iframe = document.createElement("iframe");
  iframe.src = uri;
  iframe.style.display = "none"; // Make sure it's hidden
  document.body.appendChild(iframe); // This will trigger load => external request
  iframe.remove(); // Cleanup
}
您需要创建一个按钮并添加一个调用该按钮的单击处理程序


无需为此干扰现有选项卡。

如果删除
target=“\u blank”
,会发生什么情况?我已尝试删除它,或用我能用的任何东西替换它,但结果是该按钮不再打开任何东西。我发现的唯一一个使按钮执行某些操作的目标是“空白”,而且它执行得很糟糕。如果弹出窗口是一个受限制的安全区域,其他按钮不也应该工作吗?我也有打开facebook、twitter等的按钮,它们工作得很好。好的,谢谢。我希望你所说的会奏效。我一回到家就会测试它。如果我在内容脚本中执行“window.open(MYSERVER);”操作,它就不会弹出窗口。它还会打开一个空白页。在看不到其他操作的情况下,无法判断出问题所在。也许这是一个提出新问题的好机会。