2012-04-04 2 views
0

У меня есть вопрос относительно идентификатора окна в xul. У меня есть что-то вроде моего xul-файла, и я хочу получить доступ к этому окну из javascript. В принципе, я хочу, чтобы функция возвращала мне ссылку на это окно, используя его имя. Есть ли какая-нибудь функция для этого?Идентификатор окна в xul

ответ

1

Если у вас есть XUL окна верхнего уровня, вы можете получить ссылку на него с помощью nsIWindowMediator, как это:

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

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

navigator:browser тип окна браузера, вы должны использовать windowtype attribute value вашего окна. Обратите внимание, что это не используется атрибут id - идентификатор - это другое дело и в основном полезно применять наложения.

Чтобы получить более одного окна того же типа можно было бы написать:

var enumerator = Services.wm.getEnumerator("navigator:browser"); 
while (enumerator.hasMoreElements()) 
    alert(enumerator.getNext().QueryInterface(Components.interfaces.nsIDOMWindow)); 
Смежные вопросы