Hola gente, hacia rato que no pasaba no tengo internet hace como mes y medio... pero estoy haciendo un juego simple y necesito ayuda con algo.
En este caso es un problema que no puedo identificarlo, entenderlo del todo bien, es en la parte del cliente. Aca prepare algo mas simple de la parte del cliente que no encuentro solucion.
<script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script> <script type="text/javascript"> localStorage.lastresponse = 'old';
function init(){
var host = "ws://echo.websocket.org";
socket = new WebSocket(host);
socket.onopen = function(msg){log("Welcome - status "+this.readyState); };
socket.onmessage = function(msg){
localStorage.lastresponse = msg.data;
log("Received: "+msg.data);
};
socket.onclose = function(msg){log("Disconnected - status "+this.readyState); };
}
function log(msg){var log = document.getElementById("log"); log.innerHTML+="
<br>"+msg; log.scrollTop = log.scrollHeight;}
function send_msg(msg){ log('Sent: '+msg); socket.send(msg); }
$(document).ready(function(){
$('.boton').on('click', function () {
$('.map').unbind().on('click', function (e) {
send_msg('Rock it with HTML5 WebSocket');
alert(localStorage.lastresponse);
//console.log(localStorage.lastresponse);
//delete localStorage.lastresponse;
e.stopPropagation();
});
});
});
.map{width: 200px;height: 200px;background-color: green;}
#log{width: 400px; height: 120px;overflow-y: scroll;}
El funcionamiento es simple, abris la web, se conecta al servidor, creas una unidad, selecionas que parte del mapa y crea la unida... el problema es que en el alert no me imprime 'Rock it with HTML5 WebSocket' sino el valor anterior que tenia, ¿como puedo obtener la ultima respuesta del servidor?