Firefox addon Can';t在内容脚本中从main.js接收端口消息
我正在尝试通过端口将消息从my main.js发送到面板的内容脚本。我已经尝试了很多事情,但都不走运,不过从内容脚本向main.js发送消息效果很好 下面是my main.js的外观:Firefox addon Can';t在内容脚本中从main.js接收端口消息,firefox-addon,firefox-addon-sdk,Firefox Addon,Firefox Addon Sdk,我正在尝试通过端口将消息从my main.js发送到面板的内容脚本。我已经尝试了很多事情,但都不走运,不过从内容脚本向main.js发送消息效果很好 下面是my main.js的外观: var data = require("self").data; var setting = require("panel").Panel({ width: 250, height: 130, contentURL: data.url("www.google.com"), contentScrip
var data = require("self").data;
var setting = require("panel").Panel({
width: 250,
height: 130,
contentURL: data.url("www.google.com"),
contentScriptFile: data.url("script.js")
});
require("widget").Widget({
id: "sorter1",
label: "Search Result Sorting",
contentURL: data.url("icon.ico"),
panel: setting
});
setting.port.emit("message");
这是我的内容脚本:
self.on("message", function(addonMessage) {
document.innerHTML = "Got Message"
});
[更新]抱歉,我没有完全阅读代码 首先,您实际上需要向面板发送一条消息,例如
setting.port.emit('message', someData);
第二部分:我想你想要:
self.port.on("message", function(addonMessage) {
document.innerHTML = "Got Message"
});
相关文件如下:
[Update]对不起,我没有完全阅读代码 首先,您实际上需要向面板发送一条消息,例如
setting.port.emit('message', someData);
第二部分:我想你想要:
self.port.on("message", function(addonMessage) {
document.innerHTML = "Got Message"
});
相关文件如下:
我几天前就知道了,只是没有时间在这里发布 使用面板时要记住的几点:
- 面板页面在加载扩展时加载,而不是在显示扩展时加载
- 显示面板页面时,面板页面的内容脚本将注入面板页面。(当contentScriptWhen属性为默认值时)
- 内容脚本无权访问附加SDK资源
panel.on("show", function() {
panel.port.emit("message");
});
面板内内容脚本
self.port.on("message", function() {
//doThings
});
emit()不需要第二个参数,尽管第二个参数是将传递给内容脚本的参数
function(secondArg) {
}
我在几天前就知道了,只是没有时间在这里发布 使用面板时要记住的几点:
- 面板页面在加载扩展时加载,而不是在显示扩展时加载
- 显示面板页面时,面板页面的内容脚本将注入面板页面。(当contentScriptWhen属性为默认值时)
- 内容脚本无权访问附加SDK资源
panel.on("show", function() {
panel.port.emit("message");
});
面板内内容脚本
self.port.on("message", function() {
//doThings
});
emit()不需要第二个参数,尽管第二个参数是将传递给内容脚本的参数
function(secondArg) {
}
您还必须将contentURL更改为
”http://www.google.com“
data.url为加载项的数据目录下存储的文件返回一种特殊形式的url。您还必须将contentURL更改为”http://www.google.com"
data.url为插件数据目录下存储的文件返回一种特殊形式的url。