Chrome扩展程序可以代替网站充当网络应用程序吗?

时间:2017-05-29 00:53:08

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

我正在尝试开发一个Chrome扩展程序,该扩展程序应该用新的UI完全替换特定网站的页面。换句话说,当用户访问所述网站时,扩展应该无缝地“拦截”它并显示新的“app”(保留URL而不打开新的标签或窗口)。我目前使用内容脚本来操作DOM,但它太乱了。

Google Docs等Chrome应用程序通过URL handlers达到了相同的目标,但由于现在已弃用,因此它们不是一个选项。

目前,我知道有两个选择:

  • 拦截网址并将其重定向到扩展程序网址。 我希望保留网址。
  • 使用内容脚本停止在document_start(使用window.stop())加载页面,然后“注入”新应用。显然,这有效,但听起来很黑,容易出现意想不到的故障。

我想知道的事情:

  • 第二种方法是否足够好?如果我使用它,我将面临哪些限制和其他问题?
  • 是否有其他方法至少同样好(并且最好是为此目的而设计)?

1 个答案:

答案 0 :(得分:0)

您无法在标签页中仅在窗口中打开Chrome 应用。我也不认为他们有内容脚本。

此外,Chrome应用程序现在仅在首次发布时可用于chrome操作系统(现有的Chrome应用程序适用于任何操作系统)。

要解决您的问题,您可以使用带有内容脚本的扩展程序,只需打开iframe全屏,这样网址就会保存在多功能框中,它可能会将您想要的页面作为页面的iframe会在应用程序中。

内容处理程序用于打开特殊协议URL以执行诸如发送电子邮件等操作。示例如tel://,sms://,mailto:等。 所以你不会想要这个。在批准处理协议时,它们也不值得注意。