0

拡張機能を Firefox マルチプロセス (e10s) に調整しています。

フレーム スクリプトの postMessage を使用して、Web ページにデータを送信したいと考えています。

Firefox のドキュメントには、「window」オブジェクトの代わりに「content」オブジェクトを使用するようにすべきだと書かれています。コンテンツ ページにアクセスしようとすると、次のエラーが表示されます。

// frame-script.js
addMessageListener("message_from_ext", function(message){
        try{
            var _message = {
                from: "content",
                to: "web",
                data: message
            };
            content.postMessage(_message, "*"); //getting <unavailable> on the content object
        }catch(e){
            console.log(e);
        }
});

コンテンツ オブジェクトにアクセスするにはどうすればよいですか? frame-script.js に何かロードする必要がありますか?

(Webページからデータを取得し、拡張機能に送信して、拡張機能から他のデータを取得することにすでに成功しています)

4

1 に答える 1

0

<unavailable>はエラーではありません。別のプロセスに存在するため、開いているコンソールがオブジェクトを正しく表示できないことを意味します。

ブラウザーのコンテンツ ツールボックスを開き、代わりにそのコンソールを使用して、コンテンツ プロセスのメッセージを表示します。

于 2016-01-25T19:37:22.510 に答える