0

Firefox 拡張機能が Firefox 25 で動作しなくなったというエラー レポートをいくつか受け取りました。エラーを再現できませんが、誰かが表示されているエラーを私に送信してくれました。

TypeError: this.rehostImageBundle.getString は関数ではありません @ chrome://rehostimage/content/rehostimage.js:196

rehostimage.js:

this.rehostImageBundle = document.getElementById("us.engy.rehostImage.bundle");
...
var stringValue = this.rehostImageBundle.getString("message.uploadprogress");

これらは、同じスコープで同じ関数で実行されています。その最後の行は 196 行目です。

rehostimage.xul:

<!DOCTYPE window SYSTEM "chrome://rehostimage/locale/rehostimage.ent">
<overlay id="rehostimage" 
     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
  <script type="application/x-javascript" src="chrome://rehostimage/content/rehostimage.js"/>
  ...

  <popup id="contentAreaContextMenu">
    <stringbundleset id="us.engy.rehostImage.stringbundles">
      <stringbundle id="us.engy.rehostImage.bundle" src="chrome://rehostimage/locale/rehostimage.properties"/>
    </stringbundleset>
    ...
  </popup>
  ...
</overlay>

したがって、 getElementById を呼び出すと、stringbundleが発生しないように見えますが、なぜこれが行われるのか、または一部のセットアップでのみ発生するのかはわかりません。

Firefox 25 のアドオンの互換性を確認しましたが、文字列バンドルについては何も表示されませんでした。

誰でもこれに遭遇したり、何かアイデアがありますか?

4

1 に答える 1

0

メニュー エディターとの拡張機能の競合であることが判明しました。Firefox 25 でコンテキスト メニューとのやり取りが変更され、コンテキスト メニュー オーバーレイに含まれていたリソース バンドルが削除されました。バンドルをアドオン バー オーバーレイに移動したところ、競合が解決されました。

于 2013-11-02T01:27:17.047 に答える