Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Гость от 19 Января 2003, 00:14:51

Название: Скриптик для чата
Отправлено: Гость от 19 Января 2003, 00:14:51
Народ помогите плииииз.....
У меня такой вопрос:
Я пишу чат на PHP, и у меня возник вопрос:
Как сделать при помощи JavaScript и PHP окно каторое каждые 5 секунд выводит новые сообщения с плавным перемещением скрола вниз, суть моего вопроса в том, что я непридумаю никак как сделать так, чтобы одни и теже сообщения не грузились по несколько раз, ведь если делать обновление фрейма каждые 5 секунд, то во первых, это тормозит чат, во вторых, постоянное моргание перед глазами.
У меня была одна идея, что если каждые 5 секунд создовать PHP скриптом файл с уникальным именем, затем JavaScript скрипт читает этот файл как просто сценарий JavaScripts, после чего выводит на экран содержимое файла, а следующая функция поавно передвигает скрол вниз.
Я неуверен что мои фонтазии может осуществить JavaScript, но прошу помоч...
Деньгами я за работу расплотиться несмогу, но после написания чата, кину линк на ZIP архив если хотите! :)

Пример того, чего я хочу: http://www.august4u.ru
Заранее спосибо.
Название: Скриптик для чата
Отправлено: Макс от 19 Января 2003, 00:29:22
Идея примерно такая:
Делаеш скрытый фрейм, который перегружаеш каждые 5 секунд и в который грузиш php-скриптом только новые сообщения.
А с помощью яваксрипта передаеш их в основное окно и делаеш скроллинг.

Готового кода нету, если что непонятно - спрашивай.
Название: Скриптик для чата
Отправлено: Гость от 19 Января 2003, 00:33:02
На счёт этого я понял, но вопрос в том, как при помощи JavaScripts это осуществить?
Название: Скриптик для чата
Отправлено: nagash от 20 Января 2003, 01:24:23
эм... если ничего не путаю...
window.mainframe.document.write ("типа новое сообщение");
где mainframe - имя твоего главного фрейма который ты не хочешь перегружать! =)
Название: Скриптик для чата
Отправлено: Макс от 20 Января 2003, 01:36:56
Гость
какой именно из этапов тебе не ясен:


1. решается через document.location.href
2. данные передаются примерно так
top.frames[\'hidden_frame\'].document.form.txt.value - это если к примеру та данные в скрытом фрейме вывел в textarea с именем txt. Чтобы вывести их в основном фрейме я бы использовал слои (хотя наверное можно использовать мысль nagash-а) . Для слое лучше использовать специальные библиотеки типа klayers (ссылки в FAQ-е)

3. делается с помощью либо через window.scroll хотя имхо лучше через объект TextRange метод ScrollIntoView

Естественно под всеми броузерами это работать не будет ;)
Название: Скриптик для чата
Отправлено: А`покалипсис от 20 Января 2003, 08:58:49
Тебе ж в пхпклуюе ответили?