powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Реализовать проверку "пока собеседник печатает сообщение"
3 сообщений из 3, страница 1 из 1
Реализовать проверку "пока собеседник печатает сообщение"
    #38168886
Kostik_Kostik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет
Мне необходимо реализовать проверку печати текста собеседником в приватном чате. Аналог диалогов ВК.
Вот все что Я сообразил
У меня есть таблица бд:
кто(int) - кому(int) - статус(bool)
Если статус 1 то пользователь КТО печатает пользователю КОМУ, а если 0 то не печатает
Соответственно реализована в интервале ф-я, которая выдирает статус, и если 1 то показывает сообщение что товарищ печатает, если 0 то скрывает.

Суть темы
Мне необходимо грамотно реализовать ф-и, которые будут отправлять запрос на изменение статуса. Тоесть, реализовать их так, чтобы когда пользователь печатает в статус ОДИН раз записалось 1, а 0 пишется ОДИН раз только тогда, когда после нажатия на клавишу прошла 1 секунда. То-есть уменьшить колл-во запросов к базе.
Есть textarea с привязанными keypress и keyup, мои манипуляции с интервалами и разницой секунд ничего не дали.
Может кто сталкивался или даст полезный совет? Буду очень благодарен.
...
Рейтинг: 0 / 0
Реализовать проверку "пока собеседник печатает сообщение"
    #38168907
Kostik_Kostik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А ведь все что мне было нужно это сходить в магазин за пивом=)))

Рабочий код:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
			var goTyp = new Object();
			var inTypping = false;
			$('textarea#pf_textarea').keypress(function(){
				clearInterval(goTyp);
				if(!inTypping){
					console.log('set status : '+1);
					inTypping = true;						
				}
				if(inTypping){
					goTyp = setInterval(function(){
						console.log('set status : '+0);
						inTypping = false;	
						clearInterval(goTyp);
					}, 1000);
				}
			});
...
Рейтинг: 0 / 0
Реализовать проверку "пока собеседник печатает сообщение"
    #38168997
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kostik_Kostik, есть такие понятия как Debouncing и Throttling.
Вот статья на эту тему: Микропаттерны оптимизации в Javascript: декораторы функций debouncing и throttling .
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Реализовать проверку "пока собеседник печатает сообщение"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]