получение div из iframe - PullRequest
0 голосов
/ 27 мая 2009

У меня есть эта структура:

<div id="source1">
    <iframe src="foo.html"></iframe>
</div>
<div id="source2">
    <iframe src="foo.html"></iframe>
</div>

Если у меня есть некоторый js-код внутри foo.html, есть ли способ узнать, в каком div он находится (без добавления параметра в код iframe)?

1 Ответ

2 голосов
/ 27 мая 2009

из foo.html, вы можете получить родительское окно с parent; как только вы окажетесь там, вы можете сравнить свойство contentWindow каждого iframe с this - то, которое соответствует вам.

Поиск родителя для всех iframes является самой сложной частью этого; было бы легко написать быстро, используя такую ​​библиотеку, как jQuery, но вот что-то быстро соединившееся:

var mycontainer;
var iframes = document.getElementsByTagName("iframe");
for (var iter = 0; iter <iframes.length; iter++){
    if( iframes[iter].contentWindow && iframes[iter].contentWindow === window){
        mycontainer = iframes[iter].parentNode;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...