53 lines
1.8 KiB
HTML
53 lines
1.8 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<title>Socket.IO chat</title>
|
|
<style>
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
body { font: 13px Helvetica, Arial; }
|
|
form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
|
|
form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
|
|
form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
|
|
#messages { list-style-type: none; margin: 0; padding: 0; }
|
|
#messages li { padding: 5px 10px; }
|
|
#messages li:nth-child(odd) { background: #eee; }
|
|
</style>
|
|
<script src="/socket.io/socket.io.js"></script>
|
|
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
|
|
<script>
|
|
$(function () {
|
|
// Create socket
|
|
var socket = io();
|
|
|
|
// Wait for server response and identify client
|
|
socket.on('user_identify', function(){
|
|
socket.emit('user_login', {
|
|
'username': 'Bart',
|
|
'mailHash': '289e66591abdb9c2d4cb15517f0fd8d8'
|
|
});
|
|
});
|
|
|
|
// Send data to server on form submit
|
|
$('form').submit(function(e){
|
|
e.preventDefault();
|
|
socket.emit('message_send', $('#message').val());
|
|
$('#message').val('');
|
|
return false;
|
|
});
|
|
|
|
// Receive messages from server
|
|
socket.on('message_receive', function(msg){
|
|
$('#messages').append($('<li>').text(msg.username + ': ' + msg.message));
|
|
});
|
|
});
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<ul id="messages"></ul>
|
|
<form action="">
|
|
<input id="username" autocomplete="off" />
|
|
<input id="message" autocomplete="off" />
|
|
<button>Send</button>
|
|
</form>
|
|
</body>
|
|
</html> |