【发布时间】:2017-10-29 05:23:40
【问题描述】:
我正在尝试开发一个 Chrome 扩展程序,该扩展程序应该用新的 UI 完全替换特定网站的页面。换句话说,当用户访问该网站时,扩展程序应该无缝地“拦截”它并显示新的“应用程序”(保留 URL 并且不打开新的选项卡或窗口)。我目前使用内容脚本来操作 DOM,但它太乱了。
Google Docs 等 Chrome 应用通过 URL handlers 实现了相同的目标,但由于它们现在已被弃用,因此无法选择。
目前,我知道两种选择:
- 拦截 URL 并将其重定向到扩展 URL。 我希望保留 URL。
- 使用内容脚本停止在
document_start加载页面(使用window.stop()),然后“注入”新应用程序。显然,这行得通,但听起来很老套,而且容易出现意外故障。
我想知道的:
- 第二种方法是否足够好?如果使用它,我会面临哪些限制和其他问题?
- 是否有任何其他方法至少同样好(并且最好为此目的设计)?
【问题讨论】:
标签: javascript google-chrome google-chrome-extension