問題タブ [firefox-addon-sdk]

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 投票する
2 に答える
457 参照

firefox - Firefox拡張機能をすばやく作成するにはどうすればよいですか?

いくつかのjsコードとjQueryライブラリ全体を挿入するFirefox拡張機能を作成します。ユーザーがブラウザーのどこかに配置されたボタンを押したときに、それが発生するようにしたい(インジェクション)。拡張機能の作成に関するMDCのドキュメントやその他のチュートリアルを読んだことがありますが、それらは私には複雑に思えます。XPCOMやXULなどのテクノロジーは私にとって完全に有用です(実際にそれらを学ぶ時間はありません)。私の質問は、それは私の問題を解決してからMDCに従う別の方法ですか?私は自分の仕事をより速く行う方法を見つける必要があります。私はすでにGoogleChromeの拡張機能を作成しましたが、Firefoxの拡張機能よりもはるかに簡単でした。

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

javascript - Firefox JavaScript chrome コードの弱参照

A Jetpack ベースのライブラリでクラスを書いているとします (つまり、chrome/extension コードについて話している) :

ユーザーはクラスのインスタンスを作成しますA:

A作成されたすべてのインスタンスを追跡したい場合は、次のようにします。

listA.push(this);のコンストラクターを追加し、次のAようにします。

のユーザーがaその参照を削除するまで (たとえばa、範囲外になるまで)、すべて問題ありません。私は今問題を抱えています:listAへの参照がまだ含まれているaため、ガベージコレクションされることはありません。さらに、他の方法では到達できないlistAインスタンスを除外する方法がありません。A私は効果的にメモリをリークしています。

listA必要なのは、通常の参照ではなく弱い参照にプッシュすることです。どうにかできると思いますが、ここからどこへ行けばいいのかよくわかりません。私は次のようなものを想像できます:

しかし、たとえば、弱い参照がまだ有効かどうかをテストする方法がわかりません。または、 で死んだ弱いエントリを効率的に除外する方法listA。助言がありますか?

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

firefox-addon-sdk - Jetpackは引き続きThunderbirdで動作しますか?もしそうなら、簡単な例はどこにありますか?

私の知る限り、Jetpackの初期バージョンは、FirefoxThunderbirdの両方のプラグインの開発をサポートしていましたが、現在のサイトではFirefox4についてのみ言及しています。

彼らはThunderbirdのサポートをやめましたか?

そうでない場合、誰かが私にhello worldスタイルの例を教えてもらえますか?グーグルは役に立たなかった。:/

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

firefox-addon - Jetpackのアドオンプロセスとパネルページ間の通信方法

パネルに変数を送信するための最良の方法は何ですか?人々はmustache.jsを使用していますか?現在、HTMLファイルをロードすることはできますが、panel.show()を呼び出すと通信できません。

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

javascript - JavaScriptのモジュールグローバル変数にContentScriptデータを渡す方法は?

私はFirefox拡張プロジェクトに取り組んでいますが、今はこれにこだわっています。

abc はグローバル変数で、newabc は contentScript 内の変数です。

abc = newabc を作成するにはどうすればよいですか?

ありがとう!!

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

javascript - ページモッドのコンテンツスクリプトとしてのJavascriptフレームワーク(RightJS)

私はjetpackの世界(そしてそのことについてはFirefoxの拡張機能)に不慣れで、jetpackの可能性について調査しているときに、何か奇妙なことに気づきました。pagemodにjavascriptフレームワーク(RightJS)を含む簡単なテストプロジェクトを実行しました(チュートリアルではjQueryを使用しており、正常に機能しているようです)。次のエラーが発生しました。

エラー:例外が発生しました。
トレースバック(最後の最後の呼び出し):
ファイル "/home/nic/Aptgeek/TestProjects/ff-extension/data/external/libs/right-src.js"、行5979、
ファイル "/home/nic/Aptgeek/TestProjects /ff-extension/data/external/libs/right-src.js "、行990、
TypeError:Array.includeは関数ではありません

私のmain.jsスクリプトはかなり単純です:

その議論を見た後:http: //groups.google.com/group/mozilla-labs-jetpack/browse_thread/thr ...、私はjetpackjavascriptフレームワークのサポートについて疑問に思い始めました。page-modを間違って使用していますか?それともそれはうまくいくべきですか?page-modのcontent-scriptとしてjavascriptフレームワークを使用することに関して制限はありますか?

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

firefox-addon - Mozilla JetPack のセットアップ 「指定されたレジストリ キーまたは値が見つかりませんでした」

以下のエラーが表示されます...

どうしたの?どうすれば修正できますか?

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

firefox-addon - Mozilla "Jetpack" アドオン: ウィジェットへのアンカー パネル

ウィジェットがパネルを開く Jetpack 拡張機能を作成しています。ウィジェットをクリックすると、期待どおりにパネルが開きます (ウィジェットの右下隅に固定されています)。しかし、コードから widget.panel.show() を呼び出すと、パネルがウィジェットから切り離されて開き、画面の中央に配置され、空間に浮かんでいます。

要するに、どうすればこれを修正できますか?

  1. widget.panel.show() を呼び出す代わりに、(何らかの方法で) ウィジェットでクリック イベントをシミュレートできますか?

  2. パネルをウィジェットに固定することはできますか?

この質問には、以前の Jetpack API で機能した解決策がありますが、新しいインターフェイスに変換できません: Using Positioning 'Panel' in new Jetpack API

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

firefox - Firefox:アドオンSDK(Jetpack)を使用してツールバーを追加/変更するにはどうすればよいですか?

そのため、アドオンSDKのドキュメントを何度か調べましたが、ツールバーを作成したり、既存のツールバーを変更したりする方法がどこにもわかりません。彼らはアドオンバーアイコンの作成に関するチュートリアルを持っていますが、それは私が望んでいることではありません。アドオンSDKはこれをまだサポートしていますか?もしそうなら、誰かが私を例/チュートリアルにリンクできますか?

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

firefox - アドオンSDKを使用してFirefox拡張機能を開発することの長所/短所は何ですか?

Firefox用の(さらに別の)パスワードマネージャーアドオンを開発しています。私のアドオンは次のことを行う必要があります:

  • 各パスワードフィールドに2つのコンテキストメニュー項目を追加します。
  • メニュー項目を選択したら、ダイアログボックスまたはフローティングパネルを開きます。
  • 特定のXPCOMコンポーネントの特定のメソッドにアクセスします。
  • パスワードフィールドに入力します。
  • 設定ウィンドウを含めます。
  • Firefox4.0と互換性があります。

できれば、次のことも行います。

  • Firefox3.5および3.6で実行します。
    • 一部のユーザーは最新バージョンに更新しません。
    • Firefox4.0はPowerPCMacでは動作しません。
  • Firefox4.0に再起動せずにインストールします。
  • ローカリゼーションを許可します。

アドオンSDK(旧称Jetpack)を試しましたが、開発を非常に簡単に開始できます。ただし、HTMLでは「ネイティブな外観」のダイアログボックスを簡単に作成できず、SDKはかなり重いことがわかりました。(単純な拡張機能を構築するには数キロバイトかかります。XPCOMコンポーネントが含まれています!)

アドオンSDKを使用してFirefox拡張機能を開発することの長所と短所は何ですか?「深刻な」拡張機能開発の準備はできていますか?