Полезная информация

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№115-10-2012 13:20:44

kodnik
Участник
 
Группа: Members
Зарегистрирован: 12-02-2012
Сообщений: 6
UA: Firefox 16.0

Я не могу получить доступ к переменным моего расширения из iframe

С выходом новой версии [firefox] Firefox 16, мое расширение стало выдавать ошибку: "Permission denied to access property 'myVarExt'".

browser.xul

Выделить код

Код:

<?xml version="1.0"?>
<!DOCTYPE overlay SYSTEM "chrome://mynewext/locale/overlay.dtd">
<overlay id="mynewext-overlay"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        xmlns:svg="http://www.w3.org/2000/svg"
        xmlns:html="http://www.w3.org/1999/xhtml">
<script type="application/x-javascript;version=1.7" src="base.js"/>
<hbox id="browser">
    <splitter insertafter="sidebar-splitter"
             state="open"
             resizebefore="closest"
             resizeafter="closest"
             id="mynewext-splitter"
             hidden="true"/>
    <vbox id="mynewext-sidebar"
         insertafter="sidebar-splitter"
         width="308"
         minwidth="308"
         maxwidth="308"
         collapsed="true">
      <tabbox flex="1">
        <tabpanels id="mynewext-panels" flex="1">
          <iframe id="mynewext-dashboard" flex="1"/>
        </tabpanels>        
      </tabbox>
    </vbox>
  </hbox>
</overlay>

В файле base.js прописаны переменные и функция заполнения IFRAME:
base.js

Выделить код

Код:

...
var myVarExt='Good!'; //Та самая переменная, к которой обращаюсь
...
var xulContentPanel=_('dashboard');
xulContentPanel.contentDocument.location.href = 'resource://mynewext/html/body_firefox.xhtml';
...

Доступ к переменной myVarExt из IFRAME следующим образом:
body_firefox.xhtml

Выделить код

Код:

<!DOCTYPE HTML><html xmlns="http://www.w3.org/1999/xhtml"><head>
    <title>myBar</title>
  </head>
<body><div id="testExtVar"></div></body>
<script type="text/javascript" >
var extVar=parent.myVarExt;
document.getElementById('testExtVar').innerHTML = extVar;
</script>
</html>

В старых версиях Firefox этот вызов работал, а в новой нет. В чем может быть проблема?

Отсутствует

 

№215-10-2012 17:24:41

kodnik
Участник
 
Группа: Members
Зарегистрирован: 12-02-2012
Сообщений: 6
UA: Chrome 24.0

Re: Я не могу получить доступ к переменным моего расширения из iframe

Вопрос закрыт
Дискуссию можно просмотреть тут (eng)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]