問題タブ [e10s]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
93 参照

javascript - Firefox フレームスクリプトから Web ページにメッセージを投稿するには?

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

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

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

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

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

0 投票する
1 に答える
54 参照

javascript - postMessage を Web スクリプトから frame-script に送信する

frame-script.js では、web ページ上の web スクリプトから postMessages をキャッチ/リッスンできません (カスタム イベントも)。

しかし、試してみたところ、「クリック」イベントをキャッチできました。

私は何を間違っていますか?

次のようなメッセージを投稿します。

フレーム スクリプトをリッスンします。

も試した

postMessage をキャッチしません。

0 投票する
2 に答える
83 参照

firefox - Firefox 拡張機能: 親で観察された http-on-modify-request に、負荷を担当する子フレームへのメッセージで応答する

特定のネットワーク負荷の検出と中止に依存する既存の Firefox 拡張機能を拡張しようとしていnsIContentPolicyます (結果として生じる UI アクション、つまりタブ ナビゲーションをブロックするため)。次に、そのリソースのロードを内部的に処理します。まれな状況では、ロードを処理した後で、ロードをまったく中断すべきではなかったことが判明したため、無視するようにフラグを立てて再開します。

e10s/マルチプロセスでは、親 (コンテンツ ポリシーが実行されている場所) がメッセージを子 (コンテンツの UI を処理している) に送信して、ロードを再開する必要があることを意味します。今日、それは以下によって行われます:

e10sは非常に複雑であるため、これは非常に複雑です。しかし、それは機能します。親でオブジェクトを生成し、その上で を呼び出す.sendAsyncMessage()addMessageListener()、フレーム/子スクリプトのハンドラーがそれを受け取り、必要な処理を実行します。


より良い判断 (この負荷をブロックして処理しますか?) を行うためのより多くの情報が表示されるため、からnsIContentPolicyに切り替えたいと思います。http-on-modify-requestそのオブザーバー内で私ができること:

これにより、ある種のメッセージマネージャーであり、.messageManagerメソッドを持つオブジェクトが得られます。しかし、それを使用すると、メッセージが消え、子供に見られることはありません。.sendAsyncMessage().sendAsyncMessage()


コンテキスト: https://github.com/greasemonkey/greasemonkey/issues/2280

0 投票する
2 に答える
169 参照

jquery - マルチプロセス Firefox 拡張機能で JQuery を使用できますか?

Mozilla のドキュメントは、この問題について沈黙しています。知っている人で、その理由または理由を説明して説明できる人はいますか? そうでない場合は、ポリシーの理由とアーキテクチャ上の決定を知りたいです。

編集: この質問は、アドオン SDK を使用できず、代わりに従来のオーバーレイ パターンを使用する拡張機能に限定されます。

0 投票する
1 に答える
392 参照

firefox - e10s アドオンでアクティブなタブの URL を取得する方法

ツールバーのボタンをクリックするには、アクティブなタブの URL アドレスを取得する必要があります。

しかし

エラーになりCPOWます。

e10s アドオン内のアクティブなタブ URL の URL の場所を取得するにはどうすればよいですか?

0 投票する
1 に答える
229 参照

firefox - multiprocessCompatible タグは Firefox のマルチプロセス互換性に必要ですか?

AMO にツールバー ボタン アドオンがあります。現在のところ、Firefox の通常バージョンと e10s バージョンで動作します。しかし、AMO バリデーターはアドオンに em:multiprocessCompatible タグを追加するように要求します。

<em:multiprocessCompatible>true</em:multiprocessCompatible>

AMO アドオンを更新せず、install.rdf に em:multiprocessCompatible タグを追加しない場合、Firefox 50 でアドオンが無効になるということですか?