0

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

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"); });   

进行这种类型的通信是否合法?如果是,为什么它不起作用?

谢谢

艾登

4

1 回答 1

1

是的,这是允许的。官方文档中甚至有使用该方案的示例。

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

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

于 2013-10-22T04:58:26.950 回答