Firefox插件 - 在port.on中的port.emit

时间:2013-10-22 01:36:01

标签: javascript firefox firefox-addon firefox-addon-sdk

我尝试编写以下代码,但它似乎没有响应或者我错过了一些东西:

main.js - 主要插件代码

panel.port.on("request", function(){
     panel.port.emit("yes");
}

panel.js - 内容脚本

self.port.emit("request");
self.port.on("yes", function(){ window.alert("yes"); });   

进行此类通讯是否合法?如果是,为什么它不起作用?

由于

艾登

1 个答案:

答案 0 :(得分:1)

是的,这是允许的。 the official documentation中甚至有使用此方案的例子。

  

如果是,为什么它不起作用?

您的订单有误。您只有在调用self.port.on("yes", ...)后才会调用panel.port.emit("yes", ...)。切换两个内容脚本行,东西应该可以工作。