5

非常に多くの異なるアプローチ、ガイドに圧倒されていますが、私が試したものはありません。少なくともいくつかの点を接続してください...

私の目的は、Firefox WebExtension のバックグラウンド スクリプトでウィンドウ オブジェクトを見つけることです。

問題、ライブラリをインポートしてオブジェクトServicesの検索に使用できません。window

私が試した2つの方法:

  1. Components.utils.import("resource://gre/modules/Services.jsm");非推奨の警告とComponentserror: Components.utilsis undefined が表示されます。
  2. const { Cu } = require("chrome"); let Services = Cu.import("resource://gre/modules/Services.jsm");require未定義のエラーをスローします。

これはバックグラウンド スクリプトです。使用する必要がある適切なライブラリ/インターフェイスをインポートする方法を教えてください。

4

1 に答える 1

7

さまざまな拡張タイプの概要を示すために使用されるアドオンのMDN トップ レベル ページ(FF57 は webextensions のみがサポートされているため)。

Components.utils.import

これは再起動なし/XUL (レガシー) 拡張用です。

const { Cu } = require("クロム");

これは SDK 拡張用です。

どちらも Webextensions では機能しません。

他の拡張機能タイプとは異なり、webextensions は制限的であり、wiki 全体で見られる低レベル API へのアクセスを提供しません。

したがって、この拡張タイプに関連するドキュメントを探している場合は、 webextensions 階層または標準 Web API の下にあるページに固執してください。

于 2016-03-31T17:09:32.260 に答える