2009-05-26 3 views
0

Я получил эту структуру:получения содержащего DIV из фрейма

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

Если у меня есть некоторые JS код внутри foo.html, есть способ, чтобы сказать, какой Div это в (без добавления параметр в код iframe)?

ответ

2

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

Поиск родителя для всех iframe является самой сложной частью этого; было бы легко писать быстро, используя библиотеку как 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; 
    } 
} 
+0

Вы, вероятно, означает Var = Iframes window.parent.document.getElementsByTagName («IFrame»); – Alexey

Смежные вопросы