81 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!DOCTYPE html>
 | 
						|
<html>
 | 
						|
  <head>
 | 
						|
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
 | 
						|
	<script src="http://cdn.sockjs.org/sockjs-0.3.4.min.js"></script>
 | 
						|
	<script>
 | 
						|
    $(function() {
 | 
						|
		var conn = null;
 | 
						|
 | 
						|
		function log(msg) {
 | 
						|
			var control = $('#log');
 | 
						|
			control.html(control.html() + msg + '<br/>');
 | 
						|
			control.scrollTop(control.scrollTop() + 1000);
 | 
						|
		}
 | 
						|
 | 
						|
		function disconnect() {
 | 
						|
			if (conn != null) {
 | 
						|
				log('Disconnecting...');
 | 
						|
 | 
						|
				conn.close();
 | 
						|
				conn = null;
 | 
						|
 | 
						|
				updateUi();
 | 
						|
			}
 | 
						|
		}
 | 
						|
 | 
						|
		function updateUi() {
 | 
						|
			if (conn == null || conn.readyState != SockJS.OPEN) {
 | 
						|
				$('#status').text('disconnected');
 | 
						|
				$('#connect').text('Connect');
 | 
						|
			} else {
 | 
						|
				$('#status').text('connected (' + conn.protocol + ')');
 | 
						|
				$('#connect').text('Disconnect');
 | 
						|
			}
 | 
						|
		}
 | 
						|
 | 
						|
		$('form').submit(function() {
 | 
						|
			var text = $('#message').val();
 | 
						|
			conn.send(text);
 | 
						|
			$('#message').val('').focus();
 | 
						|
			return false;
 | 
						|
		});
 | 
						|
 | 
						|
		conn = new SockJS('http://' + window.location.host + '/chat');
 | 
						|
		log('Connecting...');
 | 
						|
 | 
						|
		conn.onopen = function() {
 | 
						|
			log('Connected.');
 | 
						|
			updateUi();
 | 
						|
		};
 | 
						|
 | 
						|
		conn.onmessage = function(e) {
 | 
						|
			log(e.data);
 | 
						|
		};
 | 
						|
 | 
						|
		conn.onclose = function() {
 | 
						|
			log('Disconnected.');
 | 
						|
			conn = null;
 | 
						|
			updateUi();
 | 
						|
		};
 | 
						|
 | 
						|
		$('#message').val('').focus();
 | 
						|
    });
 | 
						|
	</script>
 | 
						|
	<title>Sockjs-go chat</title>
 | 
						|
  </head>
 | 
						|
  <body>
 | 
						|
	<h1>Sockjs-go chat</h1>
 | 
						|
 | 
						|
	<div>
 | 
						|
	  Status: <span id="status">disconnected</span>
 | 
						|
	</div>
 | 
						|
	<div id="log" style="width: 60em; height: 20em; overflow:auto; border: 1px solid black">
 | 
						|
	</div>
 | 
						|
	<form id="chatform">
 | 
						|
	  <label for="message">Message:</label>
 | 
						|
	  <input id="message" type="text" />
 | 
						|
	  <input type="submit" value="Send" />
 | 
						|
	</form>
 | 
						|
  </body>
 | 
						|
</html> |