Mercurial > cosocket
view openwebchat.js @ 33:8146a59c8045
Added basic 'chat' functionality.
author | Atul Varma <varmaa@toolness.com> |
---|---|
date | Mon, 27 Apr 2009 14:44:40 -0700 |
parents | 4a4b66f5229b |
children | 10fcf63961d8 |
line wrap: on
line source
var OpenWebChat = { startMessageListener: function startMessageListener(onMessage) { var req = new XMLHttpRequest(); req.multipart = true; req.open('GET', 'listen', true); req.overrideMimeType('text/plain'); req.addEventListener( "load", function onload(evt) { onMessage(JSON.parse(req.responseText)); }, false ); req.send(null); }, sendMessage: function sendMessage(msg) { var req = new XMLHttpRequest(); req.open('POST', 'send', true); req.overrideMimeType('application/json'); req.send(JSON.stringify(msg)); } }; $(window).ready( function() { var ENTER_KEYCODE = 13; $('#outgoing-message').keydown( function(evt) { var msg = $(this).val(); if (evt.keyCode == ENTER_KEYCODE) { if (msg) { $(this).val(''); OpenWebChat.sendMessage({content: msg}); } evt.preventDefault(); } }); OpenWebChat.startMessageListener( function(msg) { var block = $('<p></p>'); block.html(msg.content); $('#incoming-messages').append(block); }); });