Кто подскажет почему в src фрейма не грузится chrome://blablabla/content/bla.htm ? вот так, все ок <html><head></head><frameset cols="*"><frame src="http://mail.ru"></frameset></html> а вот так, лажа... <html><head></head><frameset cols="*"><frame src="chrome://blablabla/content/bla.htm"></frameset></html> chrome://blablabla/content/bla.htm - существует и в строке браузера легко открывается. |
mmx пишетКто подскажет почему в src фрейма не грузится chrome://blablabla/content/bla.htm ? вот так, все ок <html><head></head><frameset cols="*"><frame src="http://mail.ru"></frameset></html> а вот так, лажа... <html><head></head><frameset cols="*"><frame src="chrome://blablabla/content/bla.htm"></frameset></html> chrome://blablabla/content/bla.htm - существует и в строке браузера легко открывается.
может я чё то не понимаю..., есть протокол http и есть протокол chrome. Тот html, в который вы записали ссылку "chrome://..." находится в html-файле(судя по тегам <html>)? Если да, то просматриваете вы его как "http://somefile.html"? Если да, то что же вы хотите? Я думаю, очевидно, что если написать что-то типа <frame src="ftp://.... или <frame src="gopher://.... , то ничего путного не выйдет. По-моему так. |
может я чё то не понимаю..., есть протокол http и есть протокол chrome. Тот html, в который вы записали ссылку "chrome://..." находится в html-файле(судя по тегам <html>)? Если да, то просматриваете вы его как "http://somefile.html"? Если да, то что же вы хотите? Я думаю, очевидно, что если написать что-то типа <frame src="ftp://.... или <frame src="gopher://.... , то ничего путного не выйдет. По-моему так.
Насчет протокола chrome:// вообще ничего не знаю(если есть линки где почитать, киньте плиз), путем проб и ошибок разбираюсь по маленьку. однако если грузить в <script> через src тот же chrome://blablabla/content/bla.js и использовать его функции, нет проблем. Html'ку из chrome:// также можно посмотреть в лисе без особых проблем. Мне понятно что вышеописанная конструкция не работает, не понятно почему. Суть задачи такова, в расширении лежит javascript и html'ки. Нужно из произвольного url(со старницы в общем) открывать окна, с содержимым какой либо странички из chrome://blablabla/content/. В лоб не получится : http://forum.mozilla-russia.org/viewtopic.php?id=12332 От того родилось решение, запихать html'ку во фрейм, затем дернуть из фрейма весь html и затем его записать в пустое открытое окно через document.write... Все встало мертвым грузом после выше описанной траблы. Тем не менее если вызвать начальный html из расширения, то все успешно выполняется... Может это снова фича с безопасностью? Кто может внятно обьяснить? Еще раз подробнее. Создаем какое либо расширение, которое в приницпе, ничего не делает. В нем просто хранятся в файлах страницы(в html), там же в храняться файлы javascript(для все тех же страниц html). Создаем на диске С: файл bla.htm, в это файле пишем <script src="chrome://bla/content/bla.js"></script> внем же вызываем функцию из подгруженного chrome://bla/content/bla.js , в которой в свою очередь создается окно(windows.open), которое ссылается на какую либо страничку хранящуюся в расширении, например chrome://bla/content/bla.htm. Такая схема не прокатит(прокатит если все файлы загружены из расширения) из за безопасности... Потому в вызваной функции создаем пустое окно в которое записывае через document.write html со фреймом, и в этот фрейм пытаемся запихать chrome://bla/content/bla.htm, чтоб потом подменить исходный код окна на код фрейма(либо оставить все как есть). Опять же не проходит... Но легко проходит если все вызовы только из chrome к примеру... Вот тут от незнания сути голова и болит... может кто то внятно обьяснит что к чему... |
Тема закрыта. Есть решение, вчера сообразил, сегодня буду пробовать. Суть проста, необходимо bla.html обернуть в функцию яваскрипт document.open(); document.write("тут не посредственно хмтл"); document.close(); И в новом окне вписать после создания: win.document.open(); win.document.write("<script src=\"bla.htm\l"></script>"); win.document.close(); Фокус сработает. Мы сможем подгрузить данные из chrome:// |