| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Автоматическое обновление |
| Автор: Sukhof 4.12.2004, 20:29 |
| Привет народ! Уже задал этот вопрос на пхп форуме отправили сюда, вопрос такой: (цитирую дословно Не могу понять как можно сделать следующее, допустим есть окно в котором пользователь работает, иногда эта страница может быть подгружена в течении нескольких десятков минут, а то и часов, т.е. чел сидит на одной странице и необнавляет ее. Как сделать чтобы в определенном месте на этой странице появлялась оперативная информация, скажем появилось новое сообщение, или еще ченить, при этом вся страница обновляться не должна, а только маленький кусочек. З.Ы.: И пожалуйста не предлагайте использовать фреймы. |
| Автор: sergejzr 4.12.2004, 20:32 | ||
Почему? По другому никак |
| Автор: Sukhof 4.12.2004, 20:40 |
| так понял ща обосрут, ладно народ из ява скриптов я знаю только его дескрипторы и не более, Ваш брат тоже иногда интересуется пхп скриптами, помогите ламеру в ява скриптах. На счет фреймов когда хтмл начинал учить, мне говорили чтобы обновлять отдельные части страницы надо фремы использовать. Так сказать детские стереотипы остались. |
| Автор: Aliance 4.12.2004, 21:36 |
| iframe - незаметен и удобен. Иначе никак. |
| Автор: sergejzr 4.12.2004, 21:42 | ||||
Предположим, мы хотим обновлять новости. Для этого делаем страницу с скрытым фреймом в который будет подгружаться инфа
Ну нам необходим файл, который будет обновлятся на сервере. В этом примере он называется и имеет структуру:
И так наш скрипт будет забирать через определённые промежутки инфу с сервера и выписывать на страничку Для теста скопируйте 1.html и data.php в одну директорию и запустите 1.html. Вот тест: http://files.vingrad.ru/sergej.z/nullframe2/1.html Скачать: http://files.vingrad.ru/sergej.z/nullframe2/1.html Скачать: http://files.vingrad.ru/sergej.z/nullframe2/data.php Вуаля |
| Автор: Sukhof 4.12.2004, 21:45 |
| если бы еще разобраться, да вот еще трабла, вся инфа хранится в mysql ладно буду голову ломать, спасибо Добавлено @ 21:48 parent.podgruzka.location="./data.php"; вот здеся он ошибку выдал говорит parent.podgruzka есть null или не является объектом |
| Автор: sergejzr 4.12.2004, 21:48 | ||||
| Так в чём проблема? Он же из ПХП данные забирает data.php может выглядеть и так: Внимание, код не рабочий! Лишь макет!
Добавлено @ 21:50 parent.podgruzka.location="./data.php";
1.html и data.php в одной директории лежат? |
| Автор: Sukhof 4.12.2004, 22:01 |
| Файл 1.html я положил у соседа, а date у друга т.к. у него есть мускул, а у меня в опере скрипты заблочены, да файлы лежат в одной директории, |
| Автор: sergejzr 4.12.2004, 22:08 |
| Файлы с других хостов в ифрэйм загружать можно, но читать нельзя. У меня же на сервере всё работает Ещё возможно, не подгрузился фрейм до конца. Попробуйте увеличить время. Заменить setTimeout("handleData()",100); на setTimeout("handleData()",1000); |
| Автор: Sukhof 4.12.2004, 22:10 |
| ссылки битые не открываются |
| Автор: sergejzr 4.12.2004, 22:17 |
| Ну попробую на Винград выложить http://files.vingrad.ru/sergej.z/nullframe/1.html http://files.vingrad.ru/sergej.z/nullframe/1.html http://files.vingrad.ru/sergej.z/nullframe/data.php |
| Автор: Sukhof 4.12.2004, 22:19 |
| Хе хе чето и тут не работает вплане код не работает как кажет изначально про гаагскую конференцию с расширением интеграции в Европу, так это и показывает. Т.е. я вижу что обновилось но текст тот же |
| Автор: sergejzr 4.12.2004, 22:21 |
| Странно.. Это походу сервер чего-то не даёт... У меня с Винграда такая же история. А смоего сервера и из домашней директории всё ок... |
| Автор: Sukhof 4.12.2004, 22:24 |
| да уж бывает но вот прикол, все работает в опере в эксплоерре не ига, а в опере где у меня скрипты залочены все ворк Добавлено @ 22:26 а из локального каталога и опера не берет |
| Автор: sergejzr 4.12.2004, 22:33 |
| Будем ждать. Может кто нить знает, где загвоздка порылась? ошибок не выдаёт вообще никаких.. |
| Автор: sergejzr 4.12.2004, 23:04 |
| Всё в порядке Значит тогда заряжаем сразу html http://files.vingrad.ru/sergej.z/nullframe2/1.html И оба файла http://files.vingrad.ru/sergej.z/nullframe2/1.html http://files.vingrad.ru/sergej.z/nullframe2/data.html Ребята, кто сюда случайно зайдёт, кликните по ссылочке плиз |
| Автор: Sardar 4.12.2004, 23:20 |
| Зря приём данных на таймер поставил, нужно событие onLoad ловить, вдруг не у всех за секунду загрузится. Коментируем: //setTimeout("handleData()",1000); Изменяем: <iframe frameborder="0" height="100" name="podgruzka" onLoad="handleData()"></iframe> |
| Автор: sergejzr 4.12.2004, 23:23 |
| Sardar Во, как хитро! Если в остальном всё правильно, топик подчищу от неработающих линьков Добавлено @ 23:28 Только чего-то onLoad не берёт. Он как бы перед загрузкой выполняется.. |
| Автор: Sardar 5.12.2004, 00:46 | ||
Да в первый раз, там onLoad для about:blank срабатывает. |