需要从Chrome扩展程序的页面内直接链接到Chrome内部页面

11 javascript google-chrome google-chrome-extension

我只是花了7个小时直接尝试找到直接链接到Chrome内部网页的方法.现在我放弃了.我刚刚指示人们"右键单击并在新选项卡中打开".

我已经尝试了一切,从html到css再到javascript,但没有任何工作.单击链接时没有任何反应,即使右键单击链接并在新选项卡中打开它也很完美.

Javascript尝试失败:

<div class="links">
  <a href="chrome://net-internals/" onclick="window.open('chrome://net-internals/');">TESTAA</a>
</div>
Run Code Online (Sandbox Code Playgroud)

<div class="links">
  <a href="chrome://net-internals/" onclick="window.location('chrome://net-internals/');">TESTAA</a>
</div>
Run Code Online (Sandbox Code Playgroud)

没有错误页面.点击时根本没有任何反应.如果强制它在新选项卡中target="_blank"打开,则只打开一个空白选项卡.

UPDATE!解决了!

- - - 步骤1 - - -

将以下代码放在background.html页面中(在manifest.json中调用background.html):

function openNetInternals() { 
  chrome.tabs.create({url: 'chrome://net-internals/'});
}
Run Code Online (Sandbox Code Playgroud)

- - - 第2步 - - -

把这段代码放在链接上(在html页面中):

<a href="chrome://net-internals/" onclick="chrome.extension.getBackgroundPage().openNetInternals()">Net</a>
Run Code Online (Sandbox Code Playgroud)

-----第3步-----

确保刷新扩展名.它现在可以工作了.

Kon*_*nel 4

您的分机或网站可以提供此链接吗?如果来自扩展,则尝试使用chrome.tabs模块:

chrome.tabs.create({url: 'chrome://net-internals/'});
Run Code Online (Sandbox Code Playgroud)

在后台页面创建如下函数:

function openNetInternals() {
   chrome.tabs.create({url: 'chrome://net-internals/'});
}
Run Code Online (Sandbox Code Playgroud)

单击链接时,从自定义起始页调用它,如下所示:

chrome.extension.getBackgroundPage().openNetInternals();
Run Code Online (Sandbox Code Playgroud)

相关文档在这里