2011-01-23 5 views
0

Мне нужно создать веб-чат. Так что мне нужно постоянно обновлять страницу.Постоянно обновлять страницу

Я думаю использовать эту функцию JQuery:

<script type="text/javascript"> 
$(document).ready(function(){ 
    var sec = setInterval(function() 
     { 
     $('#chat').load('chat_r.php?id=' + Math.random()); 
     }, 1000); 
}); 
</script> 

Но я узнал, что эта функция очень медленно.

Возможно, вы знаете лучший вариант?

ответ

5

Вы должны изучить AJAX long polling. Это позволит вам обновить чат, не обновляя страницу, и ответит гораздо быстрее, чем стандартный опрос.

+0

aka, a * Heart Beat * – RobertPitt

0

Почему вы не пытаетесь использовать webSockets?
Они новенькие и мощные.
Конечно, все еще есть старые браузеры, которые не поддерживают многие новые функции html5, но когда мне приходилось создавать веб-приложение, использующее веб-чат, я закончил реализацию как чата ajax, так и webSokcet. Это просто предложение. См. Документацию here.

0

Для вашего первоначального вопроса я хотел бы использовать

<meta http-equiv="refresh" content="1;url=http://example.com/" /> 

Хотя сво обескуражен метод работает хорошо для меня. В основном просто обновляет страницу каждую секунду.

Но для чего ваших решений (веб-чат) Я бы определенно использовать AJAX

Вот отрывок из одного из моих сценариев

Ok StackOverflow не будет работать, когда я пытаюсь поставить код поэтому я поставил код на pastebin. http://pastebin.com/569zpbLe

Смежные вопросы