通过context-menu
模块,我检测用户点击了哪个DOM元素我的自定义上下文菜单项"标记":
var menu = require("context-menu").Item({
label: "Mark",
contentScriptFile: data.url("context.js"),
onMessage: function (node) {
//Send the node to page-mod
}
});
context.js
:
self.on("click", function (node, data) {
self.postMessage(node);
});
现在我想将此节点引用发送到page-mod
模块,其中每个注入了pagemod的contentScript的页面都知道我点击的节点(并在其中标记带有红色边框的HTML元素)每个标签)。
我知道通过postMessage()
将消息发送到pagemod是不可能的,那么如何让这些模块进行通信?是否有优雅的worker
解决方案?
答案 0 :(得分:2)
这是不可能的,postMessage部分是JSONifying您的消息,因此消息中的节点被忽略。您可以通过将有关节点的数据发送到插件上下文(使用postMessage)来实现目标。