Страницы: 1
разрабатываю расширение для FireFox,
как в JS узнать информацию об открытых страницах в браузере, наверное нужно подключить какой XPCOM-компонент, только вот не знаю что подключить?
Отсутствует
Отсутствует
прошел по ссылке, получил следующий код:
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator); var mainWindow = wm.getMostRecentWindow("navigator:browser"); var num = mainWindow.gBrowser.browsers.length; var consoleService = Components.classes["@mozilla.org/consoleservice;1"].getService(Components.interfaces.nsIConsoleService); for (var i = 0; i < num; i++) { var b = mainWindow.gBrowser.getBrowserAtIndex(i); try { consoleService.logStringMessage( i + ': ' + "b.currentURI.spec: " + b.currentURI.spec ); } catch(e) { Components.utils.reportError( e ); } }
а можно ли узнать загружена ли страница уже или еще грузится?
Отсутствует
https://developer.mozilla.org/en/XUL/br … ebProgress
или начиная с firefox 3.6 можно использовать readyState
Отсутствует
Shutnik! Огромное спасибо!!!!
Код для проверки какие вкладки загружены:
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator); var mainWindow = wm.getMostRecentWindow("navigator:browser"); var num = mainWindow.gBrowser.browsers.length; var consoleService = Components.classes["@mozilla.org/consoleservice;1"].getService(Components.interfaces.nsIConsoleService); for (var i = 0; i < num; i++) { var b = mainWindow.gBrowser.getBrowserAtIndex(i); try { consoleService.logStringMessage( i + ': ' + "b.currentURI.spec: " + b.currentURI.spec ); consoleService.logStringMessage( i + ': ' + "b.webProgress.isLoadingDocument: " + b.webProgress.isLoadingDocument ); // Если возвращает true - страница загружена, иначе грузится } catch(e) { Components.utils.reportError( e ); } }
Отсутствует
Страницы: 1