【发布时间】:2016-05-09 07:10:36
【问题描述】:
我知道socket.io 发布了聊天应用程序的源代码,但由于某种原因我无法理解所有组件。
我也读过一篇很棒的 SO article,但仍然不知道如何正确地做到这一点。
这是我的尝试
客户端
function timeoutFunction() {
typing = false;
socket.emit("typing", false);
}
$('.typing-message').keyup(function() {
console.log('happening');
typing = true;
socket.emit('typing', 'typing...');
timeout = setTimeout(timeoutFunction, 2000);
});
socket.on('typing', function(data) {
if (data) {
$('.typing').html(data);
} else {
$('.typing').html("");
}
});
服务器端
socket.on('typing', function (data) {
console.log(data);
socket.broadcast.emit('typing', data);
});
它确实有效,但它不像我想象的那样有效,当 我输入更长的时间 状态 $('.typing').html(); 在输入.. 和 '' 之间不断变化时,问题就来了。仅当我输入更长的时间时才会发生这种情况。
如何正确使用此功能。
谢谢。
【问题讨论】: