【发布时间】:2020-05-19 15:31:54
【问题描述】:
我有一个指示器,当另一个用户正在输入时,我会通过在输入框上查找按键来通知用户。但是,如果用户删除了他们正在输入的内容,指示器仍会向其他用户显示他们仍在输入的内容。当输入字段为空时,如何更改它以删除指示器。
通过将istyping 设置为空字符串,发送消息时指示符将消失。我不确定如何利用它来检测空输入字段。
var message = document.getElementById('messagebox');
var istyping = document.getElementById('istyping');
message.addEventListener('keypress', function(){
socket.emit('typing', {
user: user || 'Anonymous'
})
})
socket.on('typing', function(data){
istyping.innerHTML = '<p><i>'+ data.user +" is typing..."+'</p></i>';
})
【问题讨论】:
-
一种方法是在包装函数中使用 setInterval 以在输入完成后重复检查输入字段的值,如果按下 Enter 或输入恢复为空。
标签: javascript input socket.io indicator