Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] No funciona el codigo

Estas en el tema de No funciona el codigo en el foro de Javascript en Foros del Web. Tengo un 'personaje' quiero q se mueva de acuerdo con lo que toque con las flechitas... hice esto pero me dice que undefined is not ...
  #1 (permalink)  
Antiguo 15/09/2014, 13:36
 
Fecha de Ingreso: septiembre-2014
Mensajes: 66
Antigüedad: 9 años, 7 meses
Puntos: 1
No funciona el codigo

Tengo un 'personaje' quiero q se mueva de acuerdo con lo que toque con las flechitas...

hice esto pero me dice que undefined is not a function.
[CODE] <body>
<div id="personaje"></div>
<span id="kc"></span><br/><span id="kcode"></span>
<script>
var intervalID;
var keyCode;
var personajeID = document.getElementById('personaje');
document.onkeydown=
function move(e){
var keyCode=e.keyCode;
switch (keyCode){
case 37:
//move left
document.getElementById('kc').innerHTML = 'izquierda';
document.getElementById("kcode").innerHTML=keyCode ;
intervalID=setInterval(repeat(keyCode),10);
break;
case 38:
//move top
document.getElementById('kc').innerHTML = 'arriba';
document.getElementById("kcode").innerHTML=keyCode ;
break;
case 39:
//move right
document.getElementById('kc').innerHTML = 'derecha';
document.getElementById("kcode").innerHTML=keyCode ;
break;
case 40:
//move down
document.getElementById('kc').innerHTML = 'abajo';
document.getElementById("kcode").innerHTML=keyCode ;
break;
default:
break;
}
};
function repeat(kc){
var actualLEFT = window.personajeID.left;
var actualRIGHT;
var actualTOP;
var actualBOTTOM;
switch(kc){
case 37:

personajeID.style.left=actualLEFT-1+'px';
}
}
</script>
</body>
</html>
/CODE]


este es el 'personaje'
Código CSS:
Ver original
  1. #personaje{
  2.     background-image:url('images/face.png');
  3.     position:absolute;
  4.     width:50px;
  5.     height:50px;
  6.     border-radius:100%;
  7.     background-size:50px 50px;
  8.     left:50%;
  9.     top:50%;
  10. }

ayuda?

Última edición por icm9; 15/09/2014 a las 14:14
  #2 (permalink)  
Antiguo 15/09/2014, 15:57
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: No funciona el codigo

cambia lo que tienes por
  • document.onkeydown=function(e){
  • intervalID=setInterval(function(){repeat(keyCode)} ,10);
  • var actualLEFT =parseInt(window.getComputedStyle(personajeID, null)['left']);
ya con estos cambios el código ha ser funcional
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 15/09/2014, 20:20
 
Fecha de Ingreso: septiembre-2014
Mensajes: 66
Antigüedad: 9 años, 7 meses
Puntos: 1
Respuesta: No funciona el codigo

muchas gracias

Etiquetas: html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:57.