Модераторы: Illuminaty

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с фреймами. Верхний фрейм не отображается. 
:(
    Опции темы
Sergey N. Bocharov
Дата 27.9.2004, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 27.9.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Одно скажу Aliance -- я пошел, за справочником по JavaScript.
PM MAIL   Вверх
Sergey N. Bocharov
Дата 27.9.2004, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 27.9.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Уважаемый Aliance, все то же :--((((

Значит так. первую часть кода

Код
var isNav4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) == 4);
if (parent == window) {
  // Ничего не делаем, если NN4 печатает фрейм
  if (!isNav4 || (isNav4 && window.innerWidth != 0)) {
      if (location.replace) {
         location.replace("http://www.nikart.ru/index.htm?content=" + escape(location.href));
      } else {
         location.href = "http://www.nikart.ru/index.htm?content=" + escape(location.href);
      }
  }
}


я вставил на страницу http://www.nikart.ru/actor.php

остальной код я вставил в страницу index.htm и вставил обработчик на frameset ...

и что же... да все таже фигня .... зайдя[s] на страницу http://www.nikart.ru/actor.php идет пересылка на http://www.nikart.ru/index.htm?content=htt...rt.ru/actor.php при этом открывается ОБА фрейма, но ОПЯТЬ все то же - НЕ ТА СТРАНИЦА ВО ВТОРОМ ФРЕЙМЕ... надо чтобы открывалась actor.php во ВТОРОМ ФРЕЙМЕ...

Что же делать?
PM MAIL   Вверх
Aliance
Дата 27.9.2004, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 2
Всего: 137



Sergey N. Bocharov
withstupid.gif

Если набор фреймов состоит из одних и тех же док-тов, для восстановления структуры фреймов можно использовать код (первую его секцию), который следует включить в начало каждого документа во фрейме. Имеется обход вышеописанной ошибки в NN4
Код

// Если среди пользователей будут пользователи, используюшие NN4
var isNav4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) == 4);
if (top.location.href == self.location.href) {
  if (isNav4) {
      if (window.innerWidth != 0) {
          top.location.href = "http://www.nikart.ru/index.htm";
      }
  } else {
      top.location.href = "http://www.nikart.ru/index.htm";
  }
}




Если среди ожидаемый посетителей нет пользователей NN4, то код можно сократить до вида:
Код

// НЕ работает в NN
if (top.location.href == self.location.href) {
  top.location.href = "http://www.nikart.ru/index.htm";
}


Последующие коды используются для более гибкого набора фрейма, когда содержимое фреймов может меняться (генерированным способом). В твоем случаи их использование не обязательно!

Что тебе надо:
функцию
Код

// Если среди пользователей будут пользователи, используюшие NN4
var isNav4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) == 4);
if (top.location.href == self.location.href) {
  if (isNav4) {
      if (window.innerWidth != 0) {
          top.location.href = "http://www.nikart.ru/index.htm";
      }
  } else {
      top.location.href = "http://www.nikart.ru/index.htm";
  }
}

включить во все страницы, входящие в состав фреймов, тоесть, в твоем случаи, все, кроме index.html. Все прекрасно будет работать, даже в NN4 не будет никаких ошибок!!!

Что еще не ясно? Не стесняйся, форум создан для вопросов...

Надеюсь заработает, Илья.
Добавлено @ 20:37
И еще - естественно, функции, которые я тебе даю тебе нужно переделать под свой сайт!

ЗЫ: поставь в верхнем фрейме noscroll - иначе некрасиво

Это сообщение отредактировал(а) Aliance - 27.9.2004, 20:40
PM MAIL WWW ICQ Skype   Вверх
Sergey N. Bocharov
Дата 27.9.2004, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 27.9.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Илья (Aliance), огромное тебе спасибо за попытку обяъснить, но ведать мне не суждено понять, как сделать так чтобы ЗАРАБОТАЛО.. туповат ведать .. :--((( НУ грузится всегда INDEX.HTM, а внутри этой страницы ... верхний фрейм грузит menu.htm, а нижний фрейм грузит start.php - и это происходит, а мне надо чтобы start.php заменялось, в зависимости от куда пришел пользователью.!


Я вам повысил репутацию... спасибо за старания... Блин... вот даже репутацию не могу Вам повысить, дескать не хватает мне кол-ва сообщений (не менее ста) :--(((...

Блин, придется сделать без фреймов... затра ожидаю хорошего про.... дона... блин..


Добавлено @ 20:54
noscroll убрать нельзя... так выравнивание таблиц стоит по середине... если убрать noscroll, то верхний - фрейм таблица ... сместятся.. и будет ОЧЕНЬ плохо выглядеть
PM MAIL   Вверх
Aliance
Дата 27.9.2004, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 2
Всего: 137



Цитата(Sergey @ 27.9.2004, 20:51)
ведать мне не суждено понять

Нужно не сдаваться...

Попробуй так: оберни все эти функции в 1 функцию (к примеру myFunction2), и пропиши в индексовой странице следующее:
Код

myFunction() {
  if (myFunction2) {
     window.frames["inf"].location.href = self.location.href
}

Далее <frameset onload="myFunction();" ...>
Не уверен за правильность кода smile.gif

Цитата(Sergey @ 27.9.2004, 20:51)
даже репутацию не могу Вам повысить

По твоей просьбе это могут сделать модераторы

Про noscroll не подумал...
Хотя я могу решить эту проблемму с помощью JS...

Это сообщение отредактировал(а) Aliance - 27.9.2004, 21:23
PM MAIL WWW ICQ Skype   Вверх
Sergey N. Bocharov
Дата 27.9.2004, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 27.9.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Илья, замечательно конечно... но сдаться придется.... уже почти передел без фреймов.

Спасибо ещё раз.
Счастливо. adv/76.gif
PM MAIL   Вверх
GoodBoy
Дата 28.9.2004, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 5
Всего: 83



Sergey N. Bocharov
Значится так! Если на твоём хостинге есть поддержка SSI, то делаешь так:

index.htm:
Код
<html>
<head>
<frameset rows="177,*" frameborder="0" framespacing="0" border="0">
<frame name="mn" src="menu.htm" marginheight="0" maginwidth="0" scrolling="yes" noresize>
<frame name="inf" src="<!--#if expr="$QUERY_STRING=/\.php$/" --><!--#echo var="QUERY_STRING" --><!--#else -->news.php<!--#endif -->" marginheight="0" maginwidth="0" scrolling="yes">
</frameset><noframes></noframes>
</head>
</html>


далее в каждом файле, который должен загружаться в нижний фрейм прописываешь следующее:

Код
<script>
if (self.top == self) location.replace("index.html?имя_самого_файла");
</script>

т. е. в company.php пишешь
Код
<script>
if (self.top == self) location.replace("index.html?company.php");
</script>


в baby_pivo.php пишешь
Код
<script>
if (self.top == self) location.replace("index.html?baby_pivo.php");
</script>


и так далее!!!

Что это даст. При вызове файла index.htm напрямую будет загружен файл news.php, а при вызове файла company.php произойдет редирект на index.htm с параметром company.php и этот второй файл будет загружен в нижний фрейм!!!
:-))))))))))



Цитата(Sergey @ 27.9.2004, 21:51)
Блин... вот даже репутацию не могу Вам повысить, дескать не хватает мне кол-ва сообщений (не менее ста) :--(((...

Обратись к тем, у кого более 100 сообщений и, я думаю, тебе не откажут!!! :-)))))


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
Ignat
Дата 28.9.2004, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Флудератор
****


Профиль
Группа: Экс. модератор
Сообщений: 4030
Регистрация: 19.4.2004
Где: غيليندزيك مدينة

Репутация: нет
Всего: 73



Offtop (после прочтения можно удалить):

- Сэр!
- Сэр!
- В сад, сэр!

Блин, читал тред и смеялся, прямо Смольное училище smile.gif



--------------------
Теперь при чем :P
PM   Вверх
Sergey N. Bocharov
Дата 29.9.2004, 06:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 27.9.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Уважаемые господа: Илья, GoodBoy - огромное СПАСИБО за терпение в объяснение и дельные советы, все же ЭТО заработало (последний совет GoodBoy - я).

Отдельное спасибо Ignat - у, вообще - то я написал, что в JavaScript очень плохо понимаю (если Вы внимательно читали все сообщения, то должны были это заметить, поэтому мне кажется не актуальным последнее замечание - hmmm.gif)

Еще раз спасибо за помощь.

Дополнение:
Для GoodBoy - я, в страницы надо вставлять не
Код
<script>
if (self.top == self) location.replace("index.html?baby_pivo.php");
</script>

а
Код
<script>
if (self.top == self) location.replace("index.htm?baby_pivo.php");
</script>


(index.htm)
wink.gif
PM MAIL   Вверх
GoodBoy
Дата 29.9.2004, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 5
Всего: 83



Цитата(Sergey @ 29.9.2004, 07:26)
Дополнение:
Для GoodBoy - я, в страницы надо вставлять не
Код
<script>
if (self.top == self) location.replace("index.html?baby_pivo.php");
</script>

а
Код
<script>
if (self.top == self) location.replace("index.htm?baby_pivo.php");
</script>


(index.htm)
wink.gif

Ну это уж зависит от того, кfкjй индексный файл используется на конкретном хосте!!! У тебя - index.htm у меня - index.html wink.gif


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.0573 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.