我一直在阅读dev guide,但未能弄清楚如何将自己的代码放入网页
我知道这是可能的,因为AVG使用它(在它的链接扫描仪中),而FastestChrome扩展也使用它(突出显示某些内容并弹出一个搜索链接)。
我有一个背景页面,但我不能让它影响我继续使用的网页(权限是正确的,因为我可以让css生效)
我可能遗漏了一些非常简单的东西:/
答案 0 :(得分:7)
在文档中没有直观地呈现,但您的背景页面无法访问当前网页b / c它们处于不同的上下文中。换句话说,后台页面是它自己的独立页面,因此它无法访问任何其他页面的DOM。
如果您想影响用户在浏览器中查看的页面,您需要使用所谓的“内容脚本”。
如果您想在内容脚本和背景页面之间进行通信,则需要参考message passing API。查看my extension's source code以获取参考。我这样做了。
记住......
背景页面:用于扩展程序中的常规逻辑,而不是任何特定于页面的内容。
内容脚本:会加载到用户看到的每个页面中,并可以操作该特定页面。
答案 1 :(得分:1)
那些可能会使用Content Scripts将Javascript注入网页。这些脚本在网页的上下文中运行,可以访问DOM 您可以通过在扩展清单中声明脚本文件来定义脚本以始终在网页中运行,也可以在需要时使用后台页面注入脚本。