【发布时间】:2012-12-03 10:07:46
【问题描述】:
我正在开发一个在内容脚本中使用 jQuery/Zepto 的 chrome 扩展。现在,该扩展程序可以在每个网站上运行,这意味着用户打开的每个选项卡上都会加载 jQuery/Zepto 的副本。
有没有办法在各种内容脚本之间共享 jQuery/Zepto 对象?
我知道内容脚本可以与后台脚本通信。我希望能够让后台脚本能够访问 jQuery 对象并返回对它的引用,以及对每个内容脚本的引用。但我意识到只有 JSON 消息可以在内容和后台脚本之间传递。
有什么方法可以实现我想要的吗?
【问题讨论】:
-
不,您不能在内容脚本之间共享直接函数引用。 (重复问题:How to transfer data between the content scripts of two different tabs?)。
-
将此作为答案发布,我会接受。顺便说一句,一个问题 - 我昨天认为让 jQuery 包含在每个页面中实际上可能不是问题,因为与网页的实际资源不同,它不必下载。鉴于网页的平均大小接近 1MB(正如我在网上阅读的那样),我认为内存消耗的增加应该不是什么大问题。这似乎有道理吗?