0

拡張機能が使用するタブが2つあり、それらの間でイベントをやり取りしたいと思いました。バックグラウンドページのAPIを介してこれを行うGoogleChrome拡張機能をすでに開発しましたが、Firefoxには同等のものがないようです。

Firefox拡張機能のドキュメントのmessage-managerでうまくいくと思いましたが、オブジェクトのドキュメントはかなり貧弱です。

google chrome apiから背景ページのアイデアを直接インポートできない場合は、タブの1つを使用して他のタブを制御するのと同じように満足しています。

どんな助け/ガイダンスも素晴らしいでしょう。

4

1 に答える 1

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に到達したら、他のタブのワーカーに出力します。

私にははっきりしないことの1つは、これら2つのタブがその特定のURLで開く唯一のタブになるかどうかです。

于 2012-05-29T23:37:47.937 に答える