2015-05-06 60 views
0

我有一个网页和一个Chrome扩展,我如何打开这样的网址:chrome-extension://chrome-id/page.html。这里是我的代码:如何在网页中将网址打开为“chrome-extension”?

$(document).on('click', '#btnOpenChromeExtension', function() { 
    window.open("chrome-extension://chrome-id/webpage.html", "_blank"); 
}); 

但是,当点击,它在空白页打开新标签页中的网址是:关于:空白。我如何打开链接是Chrome扩展?

+0

当你忽略第二个参数时,它是否工作(或做其他事情)?从w3schools:_blank - URL被加载到一个新窗口。这是默认的 因此不需要指定它。仍然是一种奇怪的情况......当您手动将其粘贴到地址栏时,您提供的URL是否会导致扩展名? –

+0

@NilsO它通常与URL包含“http”,但它似乎不工作与URL包含“铬扩展名” –

回答

0

试试这个:

$(document).on('click', '#btnOpenChromeExtension', function() { 
     window.location.href = "chrome-extension://chrome-id/webpage.html"; 
     //  OR  
     window.location.replace("chrome-extension://chrome-id/webpage.html"); 
}); 
+0

不。由于安全限制,您无法正常打开'chrome-extension://'或'chrome://'页面,这不起作用。 – Xan

+0

@x我记得你最近回答了这个问题,可以使用tab而不是window.open –

+0

@ZigMandel正确。 “通常”在这里的意思是“使用可用于网页的方法”。 – Xan

2

这是由于推广政策的限制。您需要将以下内容添加到扩展程序的manifest.json文件中:

{ 
    ... 
    "web_accessible_resources": [ 
     "page/mypage.html" 
    ], 
    ... 
} 

当然,这必须是您的扩展。这是我知道让它工作的唯一途径。