2012-05-29 89 views
0

我有两个选项卡,我的扩展使用,我想在它们之间来回传递事件。我已经开发了一个Google Chrome浏览器扩展,它通过后台页面api来实现,但在Firefox中似乎没有相同的功能。firefox扩展中的跨页面通信

我认为在Firefox扩展文档中的消息管理器会做的伎俩,但对象的文档是相当差。

如果我不能直接从谷歌浏览器api导入背景页面的想法,我会很高兴使用其中一个选项卡来控制其他选项卡。

任何帮助/指导将是伟大的。

回答

2

要做到这一点,你需要建立一个事件烟斗接受从一个页面的内容脚本事件和管道它到其他页面的内容脚本main.js:

https://addons.mozilla.org/en-US/developers/docs/sdk/1.7/dev-guide/guides/content-scripts/index.html

我不完全确定你的用例是什么,所以很难推荐更具体的技术。你会做什么是:

  • 确保在一个给定的事件发生在一个标签上,发出该事件使用self.port.emit
  • 到main.js一个内容脚本连接到每个选项卡
  • 当该事件达到main.js时,将其发送给其他选项卡的工作人员。

有一件事情我不明白的是,这2个标签页是否会成为唯一的打开该特定网址的标签页?

+0

一个选项卡将是一个固定的URL /页面(保证没有重新加载或更改),另一个选项卡实际上可以是任何网页,并不保证网页何时或将要更改。 否则,我会查看该文档。 – OzBarry

+0

工作,谢谢指出。 – OzBarry