>Форум 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=22336 |
XuTMAH > 27-03-2008 21:27:32 |
Нужно сделать расширение для Firefox которое предоставляло бы сайту дополнительные специфические функции. В расширении: Выделить код Код:function Init() { window.my_component = Components.classes[ "@my_component;1" ] .getService( Components.interfaces.IMyComponent ); window.my_info = my_info_object; } window.addEventListener( "load", Init, false ); На сайте: Выделить код Код:function GetLowLevelInfo() { return my_component.GetInfo(); } function GetHighLevelInfo() { return my_info.GetInfo(); } Имеется ввиду что сайту объекты my_component и my_info предоставляются расширением. В том варианте который я привёл эти 2 объекта не видны с сайта, а только из расширений. Вопрос! Как сделать эти объекты доступными с сайта без необходимости сайту запрашивать дополнительные привилегии через PrivilegeManager или как бы то ни было ещё ??? |
Shutnik > 27-03-2008 21:56:10 |
никак, к счастью. доступ к компонентам браузера возможен только из chrome. |
Anton > 27-03-2008 22:03:04 |
_http://developer.mozilla.org/en/docs/Code_snippets:Interaction_between_privileged_and_non-privileged_pages Предположение: может быть, ещё возможен способ, когда js на сайте определяет какой-нибудь объект, а расширение через свойство .wrappedJSObject добавляет ему нужное поле. |
Anton > 30-05-2008 11:54:26 |
Нашёл статью, в которой описывается способ предоставления глобального доступа к компонентам пользователя _http://weblogs.mozillazine.org/weirdal/archives/017188.html. |