Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как из фрейма открыть ссылку в другом фрейме? (iframe) (https://javascript.ru/forum/dom-window/35092-kak-iz-frejjma-otkryt-ssylku-v-drugom-frejjme-iframe.html)

makc0993 30.01.2013 13:41

Как из фрейма открыть ссылку в другом фрейме? (iframe)
 
Всем привет. Подскажите, пожалуйста, как из фрейма открыть ссылку на сайт в другом фрейме родительского окна? (iframe)

Deff 30.01.2013 13:45

makc0993,
<iframe name=frame1 style="display:none" onload="if(window.Vario!=1){window.Vario=1;}else this.style.display='block'"></iframe>
 <a href="http://javascript.ru/forum/" target=frame1>Клик</a>

Deff 30.01.2013 14:23

Цитата:

Сообщение от makc0993
Как из фрейма открыть ссылку в другом фрейме? (iframe)

Оба Фрейма на том же домене, что и главная ??

makc0993 30.01.2013 14:23

Deff,
да

Deff 30.01.2013 14:36

makc0993,
Пропишите ссылку во фрейме с target="Имя другого фрейма"

См пример

makc0993 30.01.2013 14:59

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

makc0993 30.01.2013 22:32

а можно ли как-то к ссылке добавить onclick="..."?
чтобы при клике в дочернем фрейме на ссылку выполнялась вышеуказанная функция в родительском окне? Простое добавление к ссылке не помогает( нужно что-то еще приписать...

Deff 31.01.2013 07:39

Цитата:

Сообщение от makc0993
Простое добавление к ссылке не помогает( нужно что-то еще приписать...

Не наю, - вот скриптом создал во фрейме 1 ссылку вида:
Цитата:

<a href="http://javascript.ru/forum/" target="frame2">Клик</a>

фрейм 2 имеет такой вид:
Цитата:

<iframe name="frame2" ></iframe>

Клик по cсылке в Первом фрейме открывает ссылку во втором фрейме :

makc0993,
<script>
function Funk0(aa) {
var a='<a href="http://javascript.ru/forum/" target="frame2">Клик</a><iframe name=frame3></iframe>'
var iframe = aa
var iframeDoc = iframe.contentWindow.document;
var b = iframeDoc.createElement('div');
var S = iframeDoc.createElement('script');
S.text='alert(parent.tst)';
b.innerHTML=a;//alert(b.innerHTML)
iframeDoc.body.appendChild(S);
iframeDoc.body.appendChild(b);
}
var tst ="frame1.frame3.document.body."
//setTimeout('alert("A")',1200)
//setTimeout('alert(frame1.frame3.document.body.innerHTML)',1200)
</script>
<iframe name=frame1 onload="Funk0(this)"></iframe>
<iframe name=frame2></iframe>

makc0993 31.01.2013 11:47

можно узнать что значит это условие? if(window.Vario!=1){window.Vario=1;}
У меня оно не выполняется... и сразу переходит к этому this.style.display='block'"

Deff 31.01.2013 11:51

makc0993,
фрейм срабатывает первый раз, когда еще пустой и адрес не прописан, исключаем раскрытие фрейма, при первичной(пустой) загрузке
Сейчас попробую переделать...


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