Автор Тема: Обновление фреймов из другого фрейма  (Прочитано 13077 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Народ, как сделать так, чтобы при нажатии кнопки во фреймсете (верхний большой и нижний узкий фреймы) в нижнем фрейме происходило обновление верхнего фрейма (помимо того, что кнопка эта - форма с передачей переменных в свой же нижний фрейм)

Короче, по сути - это мелкий служебный чат, в котором надо сделать так, чтобы окно со всеми мессагами обновлялось как только юзверь постит мессагу в нижнем фрейме...

Оффлайн Pr0Head

  • Members of GreenPeace
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://digital-market.ru
Обновление фреймов из другого фрейма
« Ответ #1 : 05 Февраля 2002, 18:48:23 »
Допустим верхний фрэйм называется top, а нижний down, тогда на кнопку сабмит вешаем onClick (или даже правильней повесить событие на onSubmit):



или на форме onSubmit

Банк выполнил недопустимую операцию и будет закрыт!

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #2 : 05 Февраля 2002, 18:58:06 »
Верхний фрейм называется main
Нижний  -  bottom

В верхнем фрейме - загружен main.php
В нижнем фрейме - post.php - и в нём та самая форма

Нужно обновить верхний main.php

Я пишу так:

Не канает, что не так? Подозреваю что с location траблы... В JavaScript - я нолик с хвостиком... :-(

Оффлайн Pr0Head

  • Members of GreenPeace
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://digital-market.ru
Обновление фреймов из другого фрейма
« Ответ #3 : 05 Февраля 2002, 19:12:22 »
Странно, должно работать...

Сейчас я примерчик набросаю и доложу о результатах... :)
Банк выполнил недопустимую операцию и будет закрыт!

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Так попробуй
« Ответ #4 : 05 Февраля 2002, 21:14:27 »
onSubmit="window.main.location.reload()">
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Pr0Head

  • Members of GreenPeace
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://digital-market.ru
Обновление фреймов из другого фрейма
« Ответ #5 : 05 Февраля 2002, 21:44:03 »
Вот что обнаружилось.

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

Поэтому как вариант, можно повестить обновление верхнего фрэйма на onLoad.


Ну, а если чат не с записью в файл, то все правильно, должно работать и в моем и в Максовом варианте.
Банк выполнил недопустимую операцию и будет закрыт!

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #6 : 05 Февраля 2002, 21:48:35 »
И это не канает
Вот код:


Мессага:



Я уже думал, что название фрейма main совпадает с чем-то в js... переимеонвал фрейм в chattext

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #7 : 05 Февраля 2002, 21:52:55 »
Чат пишет в MySQL...
И не пашет... :-(

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Обновление фреймов из другого фрейма
« Ответ #8 : 05 Февраля 2002, 21:54:11 »
window.frames.chattext.document.location.reload(true)

это если быть совсем параноиком ;)

--------------------------------
reload([forceGet])
   If you supply true, forces an unconditional HTTP GET of the document
   from the server. This should not be used unless you have reason to
   believe that disk and memory caches are off or broken, or the server
   has a new version of the document (for example, if it is generated
   by a CGI on each request).
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #9 : 05 Февраля 2002, 22:02:15 »
Вот адрес этого дер..ма
http://www.freetime.md/temp/chat

Гляньте плиз... Может я глючу?

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Обновление фреймов из другого фрейма
« Ответ #10 : 06 Февраля 2002, 01:57:19 »
Цитировать

JavaScript Error: http://www.freetime.md/temp/chat/post.php,
line 1:

window.frames.chattext has no properties.


Аааааааааааа........... тормоз я !!!!!!!!

надо parent.frames.chattext.document.location.reload(true)

:)
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #11 : 06 Февраля 2002, 09:14:11 »
ВО!!!!!!
Теперь пашет.
Супер...
Спасибо, Oak...

А насчёт безопасности - это же служебный чат, а хотя сегодня сделаю там авторизацию и юзверьную систему...

Блин, как бы сделать так, чтобы оно рефрешилось и курсор оставался в нижнем фрейме в поле сообщения...
Ещё, я когда сделал там автоматический рефреш каждые 20 секунд - окно чата (IE) постоянно мерцало, если было свёрнуто... Как бы и и это убрать, тогда будет всё запишись...

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Обновление фреймов из другого фрейма
« Ответ #12 : 06 Февраля 2002, 20:32:15 »
Ну для этого надо совсем технологию менять :))) Смотри как на http://fantastic.death.kiev.ua сделано (собственно почти все так сделаны chat-ы на сегодняшний день
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #13 : 07 Февраля 2002, 10:01:47 »
Блин, там же в сорсе - немеряно других функций, где там часть, которая отвечает за тихий рефреш окна с чаттекстом и возвращает курсор в нижний фрейм...:?

Оффлайн Dj Fly

  • Simply Dj :-)
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.digitals-pace.com
Обновление фреймов из другого фрейма
« Ответ #14 : 07 Февраля 2002, 12:47:11 »
Всё сделал, вроде всё ок, главное окно чата рефрешится каждые 5 секунд, при этом возвращая курсор в нижний фрейм в поле сообщения, всё класно, чат не тормозит, и только одно НО...
Он смертельно задалбывает тем, что если его свернуть - постоянно мигает и обращает на себя внимание...

Как убрать?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28