Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передача данных между фреймами, помогите разобраться в примере 
:(
    Опции темы
Plusb
Дата 18.9.2009, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



У меня возникла проблема с обменом данными между фреймами, сейчас опишу ее:

Есть 3 файла:
main.html
left.html
right.html

В файле Майне в head'е:

Код

<frameset cols="*,*">
  <frame name="left" src="left.html" />
  <frame name="right" src="right.html" />
</frameset>
<noframes></noframes>



В файле Лефте в head'е:

Код

<script language="javascript">
t = parent.right.z;
document.write("VOT:" + t);
</script>



В файле Райте в head'е:

Код

<script language="javascript">
var z = 3;
document.write("VOT:" + z);
</script>



В итоге гружу майн.штмл и получаю:
В левой фрейме: VOT:undefined
и
В правом фрейме: VOT:3

Почему так получается? я не правильно обращаюсь?
Но если не правильно то почему, если сделать так:

В файле Майне в head'е:

Код

<frameset cols="*,*">
  <frame name="left" src="left.html" />
  <frame name="right" src="right.html" />
</frameset>
<noframes></noframes>



В файле Лефте в head'е:

Код

<script language="javascript">
t = 3
document.write("VOT:" + t);
</script>



В файле Райте в head'е:

Код

<script language="javascript">
var z = parent.left.t;
document.write("VOT:" + z);
</script>



В итоге гружу майн.штмл и получаю:
В левой фрейме: VOT:3
и
В правом фрейме: VOT:3

и все хорошо!
PM MAIL   Вверх
Dobermann
Дата 18.9.2009, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



<frameset cols="50%,*">
<script type="text/javascript">
PM   Вверх
Plusb
Дата 18.9.2009, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

<frameset cols="50%,*">
<script type="text/javascript">

Это не помогло( тут дело не в этом
PM MAIL   Вверх
magician7
Дата 18.9.2009, 13:45 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Возможно дело в том, что сначала загружается левый фрейм, а потом правый. В момент загрузки левого и обработки скрипта, еще не существует в правом фрейме нужной вам переменной, а возможно и самого правого фрейма еще нет. Попробуйте сделать так, чтобы скрипт выполнялся после полной загрузки страницы.
PM MAIL WWW   Вверх
Plusb
Дата 18.9.2009, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(magician7 @ 18.9.2009,  13:45)
Возможно дело в том, что сначала загружается левый фрейм, а потом правый. В момент загрузки левого и обработки скрипта, еще не существует в правом фрейме нужной вам переменной, а возможно и самого правого фрейма еще нет. Попробуйте сделать так, чтобы скрипт выполнялся после полной загрузки страницы.

Все правильно, теперь до меня дошло smile

но если у вас будет время, то напишите решение, заранее спасибо
если я тоже решу, то выложу тоже
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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