>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Скрыть вкладку http://forum.mozilla-russia.org/viewtopic.php?id=47260 |
ECartman > 08-12-2010 15:31:09 |
Можно как то срыть вкладку, т.е мне нужно без отображения загрузить страницу что бы при этом сработал javascript загружаемой страницы |
AllSeeingI > 09-12-2010 21:10:06 |
ECartman пишет
Для этого не обязательно создавать вкладку. Можно создать скрытый элемент browser (с аттрибутом collapsed=true и type=content), и в него загрузить нужную страницу. Примерно так: Выделить код Код:// Создаём скрытый элемент browser: var windowMediator = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.nsIWindowMediator); var _window = windowMediator.getMostRecentWindow("navigator:browser"); var docroot = _window.document; var shadow = docroot.createElement('browser'); shadow.setAttribute("collapsed", true); shadow.setAttribute("type", "content"); // Вставляем браузер в иерархию окна: docroot.documentElement.appendChild(shadow); // Важно - останавливаем загрузку страницы по умолчанию: shadow.webNavigation.stop(Components.interfaces.nsIWebNavigation.STOP_NETWORK); shadow.docShell.allowJavascript = true; shadow.docShell.allowAuth = false; shadow.docShell.allowPlugins = false; shadow.docShell.allowMetaRedirects = true; shadow.docShell.allowSubframes = false; shadow.docShell.allowImages = false; shadow.addEventListener("DOMContentLoaded", function() { // Документ загружен (shadow.contentDocument) }, false); |
ECartman > 09-12-2010 21:31:17 |
Спасибо!!! AllSeeingI |