Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <script type="text/javascript">
- $(document).ready(function(){
- $("#pac_form").submit(Send); // вешаем на форму с именем и сообщением событие которое срабатывает кодга нажата кнопка "Отправить" или "Enter"
- $("#pac_text").focus(); // по поле ввода сообщения ставим фокус
- setInterval("Load();", 2000); // создаём таймер который будет вызывать загрузку сообщений каждые 2 секунды (2000 миллисекунд)
- });
- function Send() {
- // Выполняем запрос к серверу с помощью jquery ajax: $.post(адрес, {параметры запроса}, функция которая вызывается по завершению запроса)
- $.post("/modules/mix/pages/ajax.php",
- {
- act: "send", // указываем скрипту, что мы отправляем новое сообщение и его нужно записать
- name: "<?=$userid_mix?>", // имя пользователя
- id_mix: "<?=$id_mix?>", // имя пользователя
- text: $("#pac_text").val() // сам текст сообщения
- },
- Load ); // по завершению отправки вызываем функцию загрузки новых сообщений Load()
- $("#pac_text").val(""); // очистим поле ввода сообщения
- $("#pac_text").focus(); // и поставим на него фокус
- return false; // очень важно из Send() вернуть false. Если этого не сделать то произойдёт отправка нашей формы, те страница перезагрузится
- }
- var last_message_id = 0; // номер последнего сообщения, что получил пользователь
- var load_in_process = false; // можем ли мы выполнять сейчас загрузку сообщений. Сначала стоит false, что значит - да, можем
- // Функция для загрузки сообщений
- function Load() {
- // Проверяем можем ли мы загружать сообщения. Это сделано для того, чтобы мы не начали загрузку заново, если старая загрузка ещё не закончилась.
- if(!load_in_process)
- {
- load_in_process = true; // загрузка началась
- $.post("/modules/mix/pages/ajax.php",
- {
- act: "load", // указываем на то что это загрузка сообщений
- last: last_message_id, // передаём номер последнего сообщения который получил пользователь в прошлую загрузку
- id_mix: <?=$id_mix?>,
- rand: (new Date()).getTime()
- },
- function (result) { // в эту функцию в качестве параметра передаётся javascript код, который мы должны выполнить
- var res = eval('(' + result+ ')'); // выполняем скрипт полученный от сервера
- alert(res);
- // $(".chat").scrollTop($(".chat").get(0).scrollHeight); // прокручиваем сообщения вниз
- load_in_process = false; // говорим что загрузка закончилась, можем теперь начать новую загрузку
- });
- }
- }
- </script>
- <div class="chat r4">
- <div id="chat_area"></div>
- </div>
- <form id="pac_form" action="">
- <div style='font-size: 10pt; color: white;'>Добавить сообщение:</div> <br>
- <textarea rows=3 id="pac_text" style="width: 40%;" class=inp></textarea>
- <input type="submit" value="Отправить">
- </form>
Add Comment
Please, Sign In to add comment