Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/09/2013, 04:45
Avatar de marlanga
marlanga
 
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 11 meses
Puntos: 206
Respuesta: Mover en diagonal un div con el teclado

Código Javascript:
Ver original
  1. this.keys={ left:false, top:false,  rigth:false, bottom:false };
  2.  
  3. this.keyboard = function(){
  4.         $(document).keydown(function(e){
  5.             if(e.keyCode == '65'){
  6.                 self.keys.left=true;
  7.             }
  8.             if(e.keyCode == '68'){
  9.                 self.keys.right=true;
  10.             }
  11.             if(e.keyCode == '87'){
  12.                  self.keys.top=true;
  13.             }
  14.             if(e.keyCode == '83'){
  15.                  self.keys.bottom=true;
  16.             }
  17.             self.move();
  18.         });
  19.         $(document).keyup(function(e){
  20.             if(e.keyCode == '65'){
  21.                 self.keys.left=false;
  22.             }
  23.             if(e.keyCode == '68'){
  24.                 self.keys.right=false;
  25.             }
  26.             if(e.keyCode == '87'){
  27.                  self.keys.top=false;
  28.             }
  29.             if(e.keyCode == '83'){
  30.                  self.keys.bottom=false;
  31.             }
  32.         });
  33.     };
  34.  
  35. this.move = function(){
  36.  
  37.         var x = self.div.offset().left;
  38.         var y = self.div.offset().top;
  39.  
  40.         if (this.keys.left) x-=self.pixMove;
  41.         if (this.keys.right) x+=self.pixMove;
  42.         if (this.keys.top) y-=self.pixMove;
  43.         if (this.keys.bottom) y-=self.pixMove;
  44.  
  45.         self.div.css('left',x+'px');
  46.         self.div.css('top',y+'px');
  47.     };