Tôi đang cố gắng thêm vào trò chuyện một chức năng "người dùng đang nhập"; trò chuyện được viết bằng PHP + MySQL/Ajax.Chức năng "Người dùng đang nhập" trong cuộc trò chuyện
Làm thế nào nó cũng làm việc:
-khi đối tác trò chuyện của tôi bắt đầu gõ X tôi thấy trong hộp trò chuyện của tôi: "X là đánh máy"
-khi I (tên Y) đang gõ ông thấy trong mình hộp trò chuyện: "Y đang nhập" (giống như Yahoo Messenger).
Code tôi đã cố gắng cho đến nay:
<script type="text/javascript" language="javascript">
var timer = 0;
function reduceTimer() {
timer = timer - 1;
isTyping(true);
}
function isTyping(val) {
if (val == 'true') {
document.getElementById('typing_on').innerHTML = "User is typing...";
} else {
if (timer <= 0) {
document.getElementById('typing_on').innerHTML = "No one is typing -blank space.";
} else {
setTimeout("reduceTimer();", 500);
}
}
}
</script>
<label>
<textarea onkeypress="isTyping('true'); timer=5;" onkeyup="isTyping('false')" name="textarea" id="textarea" cols="45" rows="5"></textarea>
</label>
<div id="typing_on">No one is typing -blank speace.</div>
Câu hỏi:
Nếu tôi dừng lại một vài giây để suy nghĩ về chính tả của tôi có vẻ như tôi đã ngừng gõ. Có cách nào liên quan và ít phức tạp hơn để đặt chức năng này? Có thể có mã cho:
- hộp văn bản không trống (người dùng nhấn bất kỳ phím nào để bắt đầu nhập) -> Tin nhắn: Người dùng đang nhập.
- hộp văn bản trống -> Tin nhắn: Người dùng không nhập.
- hộp văn bản không trống, nhưng người dùng chưa nhấn bất kỳ phím nào lâu hơn 5 giây -> Tin nhắn: Người dùng không nhập.
Nó thể hiện bản thân mình rằng tôi đang nhập; làm thế nào tôi có thể thực hiện nó hoặc ở đâu, để nhìn thấy trong hộp trò chuyện của tôi là "X người dùng đang gõ" và không phải "Bản thân tôi đang gõ". Tương tự cho người dùng khác, anh ta sẽ nhận được một thông báo về tôi gõ/không gõ, không phải về bản thân mình.
Cảm ơn bạn.
+1 cho bạn ..Bạn đã có giải pháp? Bởi vì tôi cũng cần điều tương tự chính xác những gì bạn cần? –
Trường hợp người nào đó đặt mã ajax để gửi dữ liệu –