2011-01-31 1 views
7

У меня есть веб-страница с jQuery DOMWindow, которая загружает его содержимое из iFrame. Мне нужно получить доступ к элементам родительского окна из iFrame. Это возможно?Доступ к объектам DOM родительского окна из jQuery DOMWindow с iFrame

Это конфигурация для DOMWindow, который открывается из моей главной страницы:

 <script type="text/javascript"> 
      $('.AjaxDOMWindow').openDOMWindow({ 
       anchoredClassName:'DOMWindow', 
       draggable: 1, 
       eventType:'click', 
       height:500, 
       loader:1, 
       loaderHeight:16, 
       loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif', 
       loaderWidth:17, 
       positionLeft:0, 
       positionTop:0, 
       positionType:'centered', 
       width:700, 
       windowSource:'iframe' 
      }); 

Я пытающийся получить доступ к элементам родительского окна из окна DOM с:

parent.document.getElementById('foo').innerHTML = ''; 

Но это не работает. Благодаря!

+0

Возможный дубликат http://stackoverflow.com/questions/726816/how-to-write-this -in-jquery-window-parent-document-getelementbyidparentprice – Lance

+0

Не уверен, что это дубликат. Спасибо за предложение. Вышеупомянутый вопрос не относится к iframe, загруженному внутри DOMWindow - это мой сценарий. –

ответ

8

Изменить

parent.document.getElementById('foo').innerHTML = ''; 

в

window.parent.document.getElementById('foo').innerHTML = ''; 
4

Я вижу, у вас есть в качестве тега, так что вы можете сделать это, как показано ниже.

$("#foo", window.opener.document) 

ИЛИ

window.opener.document.$("#foo") 
+0

это не сработает '$ (" #foo ", window.opener.document)' будет –

+0

@RoyiNamir Отредактировано с учетом вашего комментария. –

0

Это может также работать:

$(window.parent.document).find("#foo")