Не работает чат(((
Нашел в инете чат ну почему он не обновляется, хз даже почему вроде все есть если страницу обновить чат тоже обновится, ну если страницу не обновлять и писать в чат ничего не происходит сообщения отправляет то что я пишу, ну оно сразу не появляется надо страницу обновить потом оно появится так само аналогично кто и пишет на другой стороне экрана=)))
Вот сам код... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Чат</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> <script> $(document).ready(function () { // делаем фокус на поле ввода при загрузке страницы if ($("#chat_text_input").size()>0) { $("#chat_text_input").focus(); } // функция отправки сообщения function send_message() { var message_text = $('#chat_text_input').val(); if (message_text!="") { $.ajax( { url: 'chat_scripts.php', type: 'POST', data: { 'action': 'add_message', 'message_text': message_text }, dataType: 'json', success: function (result) { $('#chat_text_input').val(''); // очищаем поле ввода // сразу же подгружаем отправленное сообщение в чат get_chat_messages(); } }); } } // функция подгрузки новых сообщений в чат function get_chat_messages() { // если не выставлена блокировка повторного выполнения данной функции, продолжаем if ($('#block').val() == 'no') { $('#block').val('yes'); // ставим блокировку var last_act = $('#last_act').val(); $.ajax( { url: 'chat_scripts.php', type: 'POST', data: { 'action': 'get_chat_message', 'last_act': last_act }, dataType: 'json', success: function (result) { // добавляем в текстовое поле новые сообщения $('#chat_text_field').append(result.message_code); // обновляем значение последнего сообщения $('#last_act').val(result.last_act); // автопрокрутка текстового поля вниз $('#chat_text_field').scrollTop($('#chat_text_field').scrollTop()+100*$('.chat_post_my, .chat_post_other').size()); $('#block').val('no');// убираем блокировку } }); } } // отправка сообщений при нажатии клавиши "Enter" $('#chat_text_input').keyup(function(event) { if (event.which == 13) { send_message(); } }); // отправка сообщений при нажатии кнопки "Ответить" $('#chat_button').click(function() { send_message(); }); // Действие для кнопки "Выход" $('#logout_button').click(function() { window.location.href = 'index.php?logout'; }); // проверяем наличие новых сообщений каждые 2 секунды setInterval(function() { get_chat_messages(); }, 2000); // прокрутка текстового поля до последнего сообщения вниз $('#chat_text_field').scrollTop($('#chat_text_field').scrollTop()+100*$('.chat_post_my, .chat_post_other').size()); }); </script> <style> #chat_body { width:800px; margin:8px auto 3px; float:left; } #chat_text_field /* Стили для текстового поля */ { overflow:auto; /* Отображается полоса прокрутки, когда высота контента > высоты текстового поля */ border:1px solid #999; -webkit-border-radius: 5px 5px 5px 5px; -moz-border-radius: 5px 5px 5px 5px; border-radius: 5px 5px 5px 5px; padding:3px; background-color:#CCC; } #chat_text_input /* Стили для поля ввода */ { float:left; width:600px; margin:3px 0; font:13px Verdana, Geneva, sans-serif; border:1px solid #999; -webkit-border-radius: 5px 5px 5px 5px; -moz-border-radius: 5px 5px 5px 5px; border-radius: 5px 5px 5px 5px; } #chat_button { float:left; margin:2px 5px 2px 15px; } #logout_button { float:left; margin:2px 5px; } .chat_mess_time { font:10px Verdana, Geneva, sans-serif !important; margin:1px 3px; } .chat_nickname { font-weight:bold; } .chat_post_my { font:11px Verdana, Geneva, sans-serif !important; margin:1px 3px; color:#161; } .chat_post_other { font:11px Verdana, Geneva, sans-serif !important; margin:1px 3px; color:#039; } </style> </head> <body> <div id="chat_body"> <!--Текстовое поле чата--> <div id="chat_text_field" style="height:300px;"></div> <!--Номер последнего сообщения--> <input id="last_act" name="last_act" type="hidden" value="0" /> <!--Блокировка повторного выполнения функции get_chat_messages()--> <input id="block" name="block" type="hidden" value="no" /> <input id="chat_text_input" name="chat_text_input" type="text" /> <input id="chat_button" name="chat_button" type="button" value="Ответить"/> <input id="logout_button" name="logout_button" type="button" value="Выход" /> </div> </body> </html> |
В рамках рамки что означает эта строка:
'action': 'get_chat_message', ? И вообще по-моему все сделано через ж. На асинхрон наложены какие-то натужные блокировки. |
хз, я его в нете нашел))
|
Где нашли с тех бы и спросили.
|
Часовой пояс GMT +3, время: 08:32. |