Created
October 6, 2016 03:12
-
-
Save pnakibar/e0d92e7ffca3bc7a72cf1c1afb609aab to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<title>Websocket tutorial</title> | |
<script src="http://localhost:3000/socket.io/socket.io.js"></script> | |
</head> | |
<body> | |
<h1> | |
Ultimate Web Chat 0.1.0 | |
</h1> | |
<div id='motd'></div> | |
<p id='messages'> | |
</p> | |
<input id="new-message" type="text" placeholder="New Message"> | |
<button name="button" onclick="sendMessage()">Send</button> | |
<script> | |
const socket = io('http://localhost:3000'); | |
const messages = document.getElementById('messages'); | |
function addMessage(content) { | |
const newDiv = document.createElement('div'); | |
const newContent = document.createTextNode(content); | |
newDiv.appendChild(newContent); | |
messages.appendChild(newDiv); | |
} | |
function sendMessage() { | |
const newMessage = document.getElementById('new-message').value; | |
socket.emit('sent message', newMessage); | |
document.getElementById('new-message').value = ""; | |
} | |
socket.on('hello', (data) => { | |
document.getElementById('motd').textContent = data; | |
}) | |
socket.on('messages', (data) => { | |
data.forEach(m => addMessage(m)); | |
}) | |
socket.on('new message', (data) => { | |
addMessage(data); | |
}) | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment