Chrome拡張機能をFirefoxに移植しています。これは、コンテンツスクリプトを使用して、postMessageを介して周囲のページのメソッドを呼び出します。このページには、次のようなイベントリスナーが含まれています
window.addEventListener('message', function(event) {
console.log(event)
}, false);
次の呼び出しを使用して、FirefoxアドオンのSDKコンテンツスクリプトからメッセージを送信しようとしています。
self.postMessage({toPage: true, type: "initAck"}, "*");
ところで、windows.postMessageを直接使用しようとしましたが、使用する必要があるという例外が発生しますself.postMessage
アドオンでこのメッセージを聞いてmain.js
、メソッドを介して投稿しましたworker.postMessage
が、メッセージがページのイベントリスナーに届きません。
pageMod.PageMod({
include: "*",
contentScriptWhen: "start",
contentScriptFile: [self.data.url("jquery.min.js"),
self.data.url("myscript.js")],
onAttach: function(worker) {
worker.on("message", function(addonMessage) {
worker.postMessage(addonMessage, "*");
});
}
});
一般的に、Firefoxコンテキストスクリプトが周囲のページにアクセスする方法はありますか?