0

xulのウィンドウIDについて質問があります。xulファイルに次のようなものがあり、javascriptからこのウィンドウにアクセスしたいと思います。基本的に、その名前を使用してそのウィンドウへの参照を返す関数が必要です。それを行う機能はありますか?

4

1 に答える 1

1

トップレベルの XUL ウィンドウがある場合は、次のようにnsIWindowMediatorを使用して参照を取得できます。

Components.utils.import("resource://gre/modules/Services.jsm");

Services.wm.getMostRecentWindow("navigator:browser");

navigator:browserブラウザ ウィンドウのタイプです。ウィンドウのwindowtype属性値を使用する必要があります。これは属性を使用していないことに注意してくださいid。ID は別のものであり、オーバーレイを適用するのに最も役立ちます。

同じタイプのウィンドウを複数取得するには、次のように記述します。

var enumerator = Services.wm.getEnumerator("navigator:browser");
while (enumerator.hasMoreElements())
  alert(enumerator.getNext().QueryInterface(Components.interfaces.nsIDOMWindow));
于 2012-04-04T08:25:31.410 に答える