Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как вытащить src фрейма загружающегов другом фрейме? (https://javascript.ru/forum/misc/29276-kak-vytashhit-src-frejjma-zagruzhayushhegov-drugom-frejjme.html)

new_forward 21.06.2012 21:22

Как вытащить src фрейма загружающегов другом фрейме?
 
Доброго времени суток! Есть вот такая дом структура:

Код:

<html>
<head>
</head>
<body>
Содержимое1
<div id="go">
<ins>
<ins id="aswift_0_anchor">
<iframe width="160" scrolling="no" height="90" name="myframe" id="myframe">
Содержимое 2
<iframe width="160" scrolling="no" height="90" src="http://site.ru"
name="myframe2" id="myframe2" hspace="0" allowtransparency="true">
Содержимое 3
</iframe>
</iframe>
</ins>
</ins>
</div>
</body>
</html>

Как достать значение атрибута src второго фрейма (myframe2) вставив js код где Содержимое1? возможно это сделать хоть как то?:-?

Dim@ 21.06.2012 21:35

new_forward,
да можно (если ифреймы с одного домена (первый ифрейм), и вы знаете ид второго ифрейма)

lord2kim 21.06.2012 21:37

Цитата:

Сообщение от new_forward (Сообщение 183111)
Доброго времени суток! Есть вот такая дом структура:

Код:

<html>
<head>
</head>
<body>
Содержимое1
<div id="go">
<ins>
<ins id="aswift_0_anchor">
<iframe width="160" scrolling="no" height="90" name="myframe" id="myframe">
Содержимое 2
<iframe width="160" scrolling="no" height="90" src="http://site.ru"
name="myframe2" id="myframe2" hspace="0" allowtransparency="true">
Содержимое 3
</iframe>
</iframe>
</ins>
</ins>
</div>
</body>
</html>

Как достать значение атрибута src второго фрейма (myframe2) вставив js код где Содержимое1? возможно это сделать хоть как то?:-?

во-первых вытащить значение атрибута элемента до его объявления на странице (т.е. на месте Содержимое1) нельзя
во-вторых структура плавающих фреймов построена не верно...внутри тегов iframe нельзя вроде размещать еще один iframe

Dim@ 21.06.2012 21:39

во схема получения src 2-го ифрейма
var src = document.getElementById('ид первого ифрейма').contentDocument.getElementById('ид второго ифрейма').src;

<iframe id='ifr' src='блаблабла.ru'></iframe>

первый ифрейм обязательно должен быть с вашего домена

Dim@ 21.06.2012 21:41

lord2kim,
наркоман штоле? он структуру написал а не сам код (естственно такой код который у него работать не будет)

lord2kim 21.06.2012 21:45

Цитата:

Сообщение от Dim@ (Сообщение 183122)
lord2kim,
наркоман штоле? он структуру написал а не сам код (естственно такой код который у него работать не будет)

пусть даже так...но он не получит из места Содержимое1 доступ к плавающим фреймам...

Dim@ 21.06.2012 21:48

lord2kim,
это правда истинная правда=) сможет только если содержимое 1 будет после фреймов

Deff 21.06.2012 21:57

new_forward,
1. Выложите примерные ссылки:
a) Главная страница
b) 1-й фрейм
с) 2-й фрейм

2. Откуда из какого окна требуется прочтения адреса ? (a, b, с

3. Какие адреса известны абсолютно точно и заранее

new_forward 22.06.2012 00:36

Вот более четкая структура, теги head и html я не писал чтоб не зхломлять.

Код:

<body>
Главная страница
<script>Скрипт генерирующий фрейм myframe1</script>
<ins>
        <ins id="aswift_0_anchor">
                <iframe width="160" scrolling="no" height="90" frameborder="0"
style="left:0;position:absolute;top:0;" name="myframe1" id="myframe1" vspace="0"
onload="var i=this.id,s=window.site_iframe_oncopy,H=s&amp;
&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}
if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){i+='.call';setTimeout(h,0)
}else if(h.match){i+='.nav';w.location.replace(h)}s.log&amp;&amp;s.log.push(i)}"
marginheight="0" marginwidth="0" hspace="0" allowtransparency="true">
                        <body>       
                        Страница 2
                                <iframe width="160" scrolling="no" height="90" src="ссылка А" name="myframe2"
id="myframe2" hspace="0" allowtransparency="true">
                                        <body>
                                        Страница 3
                                            </body>
                                </iframe>
                        </body>
                </iframe>
        </ins>
</ins>
</body>

- Скриптом из глпвной страницы прочитать src фрейма myframe2.
- myframe1 не меняется, меняется только src фрейма myframe2.

И последнее, myframe1 генерируется js скриптом и ложится главную страницу....

Deff 22.06.2012 00:47

new_forward,
1. 2-й фрейм с того ж домена, что и главная ?


Часовой пояс GMT +3, время: 21:36.