-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathchat.js
More file actions
30 lines (26 loc) · 866 Bytes
/
chat.js
File metadata and controls
30 lines (26 loc) · 866 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//make connection
var socket = io.connect('http://localhost:9000');
//Query DOM
var message = document.getElementById('message');
var handle = document.getElementById('handle');
var btn = document.getElementById('send');
var output = document.getElementById('output');
var feedback = document.getElementById('feedback');
//emit events
btn.addEventListener('click',function(){
socket.emit('chat',{
message:message.value,
handle:handle.value
});
});
message.addEventListener('keypress',function(){
socket.emit('typing',handle.value);
});
//listen for events
socket.on('chat',function(data){
feedback.innerHTML = "";
output.innerHTML +='<p>'+'<strong>'+ data.handle +' :</strong>'+ data.message +'</p>'
});
socket.on('typing',function(data){
feedback.innerHTML = '<p><em>'+data+'is typing...</em></p>'
});