/ / pobieranie elementu div elementu iframe - javascript, iframe

pobieranie elementu div elementu iframe - javascript, iframe

Mam tę strukturę:

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

Jeśli mam jakiś kod js w pliku foo.html, czy istnieje sposób na określenie, w którym div jest (bez dodawania parametru do kodu iframe)?

Odpowiedzi:

2 dla odpowiedzi № 1

z pliku foo.html możesz pobrać okno nadrzędne parent; gdy już tam będziesz, możesz porównać poszczególne elementy iframe contentWindow własność z this - ten, który pasuje, to ty.

Wyszukiwanie rodziców dla wszystkich elementów iframe jest najtrudniejszą częścią tego; byłoby łatwo napisać szybko przy użyciu biblioteki takiej jak jQuery, ale tutaj coś szybko zhakowano:

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;
}
}