Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Javascript запрещающий открывать iframe в новом окне. HELP! (https://javascript.ru/forum/events/5188-javascript-zapreshhayushhijj-otkryvat-iframe-v-novom-okne-help.html)

Андреи 24.09.2009 13:07

Javascript запрещающий открывать iframe в новом окне. HELP!
 
В каждую страницу, которые подгружаются в единственный iframe "b" страницы index.htm добавил:

<SCRIPT LANGUAGE="javascript">
if (self.parent.frames.length == 0)
self.parent.location="index.htm";
</SCRIPT>

Запрещение на открытие iframe в отдельном окне работает, только всё время открывает index.htm с подгружаемой по умолчанию в iframe 1.htm, т.к. в index.htm прописано:

<IFRAME src="1.htm" name="b" width="100%" height="100%">

Как сделать так, чтобы при открытии iframe в новом окне открывался index.htm с той подгруженной страницей в iframe, КОТОРУЮ Я ЗАПРАШИВАЛ КОГДА ПЫТАЛСЯ ОТКРЫТЬ В НОВОМ ОКНЕ (т.е. 2.htm, 3.htm и т.д.)?

Kolyaj 24.09.2009 13:18

Может пора уже проснуться от летаргического сна и не делать сайты на фреймах?

Андреи 24.09.2009 13:36

Поздно, весь сайт уже на фреймах.

B~Vladi 24.09.2009 13:45

Цитата:

Сообщение от Андреи
Поздно, весь сайт уже на фреймах.

Жестокий у вас верстальщег, конечно...
Вашу проблему можно решить... Но это не стоит того, + вам придётся переделывать структуру сайта, а это не 2 строчки JS:)
И вообще... Такой функционал должен обрабатывать сервер...

Андреи 24.09.2009 13:49

Javascriptom без изменения структуры сайта не обойтись?

B~Vladi 24.09.2009 13:53

Цитата:

Сообщение от Андреи
Javascriptom без изменения структуры сайта не обойтись?

Изменение структуры нужно для построения правильной логики работы сайта...
Если чесно, не до конца понятна ваша структура...
Вобщем, вам нужно не index.html грузить, а сам 1.html... В чём проблема?! Зачем вам вообще эти фреймы?! Из-за них вы сами усложнили себе жизнь:)

Андреи 24.09.2009 13:57

Мне нужно грузить index.htm с 2.htm или 3.htm, в зависимости от ссылки

Gvozd 24.09.2009 13:57

можно
при переходе на index.htm дополнительно передаете имя текущей страницы в параметре URL
в index.htm этот параметр обрабатываете, и открываете в iframe именно то, что нужно
можно также сделать сохранение этого параметра в кукисы, и не смущать пользователя адресной строкой
либо передавать в параметр в хеше URL-а, и в Index.htm очищать хеш
вам поможет это
http://javascript.ru/window.location

Андреи 25.09.2009 10:08

А нельзя просто как нибудь изменить скипт типа:

<SCRIPT LANGUAGE="javascript">
if (self.parent.frames.length == 0)
self.parent.location="index.htm"+(iframe(b)="2.htm ");
</SCRIPT>

Я просто не совсем разбираюсь, т.е. совсем не разбираюсь в location и getEvent.

Gvozd 25.09.2009 15:39

Цитата:

Сообщение от Андреи
т.е. совсем не разбираюсь в location

а ссылку я для кого дал?
проблема прочитать, что ли?
после прочтения вопрос должен отпасть
Цитата:

Сообщение от Андреи
getEvent.

это вы вообще к чему?

в общем, разбирайтесь по ссылке
если не можете сами разобраться, то вам в раздел работа


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