Foros del Web » Programando para Internet » Javascript »

Teclado con Javascript

Estas en el tema de Teclado con Javascript en el foro de Javascript en Foros del Web. Hola amigos, gracias anticipadas por su ayuda, intento manejar una pagina web con el teclado, he probado este codigo: <body onkeypress="keyPressed(event)"> <script> function keyPressed(e){ thisKey=String.fromCharCode(e.keyCode); ...
  #1 (permalink)  
Antiguo 21/09/2010, 15:50
 
Fecha de Ingreso: octubre-2009
Mensajes: 11
Antigüedad: 14 años, 6 meses
Puntos: 0
Teclado con Javascript

Hola amigos, gracias anticipadas por su ayuda, intento manejar una pagina web con el teclado, he probado este codigo:

<body onkeypress="keyPressed(event)">

<script>
function keyPressed(e){
thisKey=String.fromCharCode(e.keyCode);
if (thisKey=="1"){ document.location.href='verde.htm';}
if (thisKey=="2"){ document.location.href='rojo.htm';
}
if (thisKey=="3"){
}
alert("Ha pulsado la tecla "+thisKey+", escriba el código para manejar esa tecla");
}
</script>

y tengo el siguiente error, al presionar el numero correspondiente, primero me da el mensaje de error "escriba el codigo para manejar esa tecla" y al dar aceptar a ese mensaje, ejecuta la orden, o sea va a la pagina verde y viceversa, alguien tiene idea que me esta faltando?. Gracias de nuevo.
  #2 (permalink)  
Antiguo 21/09/2010, 15:57
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Teclado con Javascript

Hola

Ha de devolver algo, en este caso return false;

Edito: Usa tecla = (document.all)?e.keyCode: e.which para que funcione en otros navegador aparte de IE
Edito2: Ahora no puedes tratarlo como string, sino como numérico if (thisKey==49) // 1

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 21/09/2010 a las 16:32
  #3 (permalink)  
Antiguo 22/09/2010, 11:44
 
Fecha de Ingreso: octubre-2009
Mensajes: 11
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Teclado con Javascript

Hola Adler, gracias por tu respuesta, es que no estoy todavía muy practico con la programación en javascript y no he interpretado muy bien tu solución, el comando debería ejecutarse porque el código para manejar la tecla 1 esta escrito, sin embargo al oprimir la tecla "1" devuelve el mensaje "ha oprimido la tecla 1 escriba el código para manejar esa tecla" lo cual sería correcto si dicho código no estuviera escrito, pero si lo está, y al dar a aceptar al mensaje, ejecuta el comando correctamente, pero solamente inmediatamente después de dar aceptar en el mensaje de error, lo mismo ocurre con el número 2, no entiendo si debo agregar o quitar algun código, o si el codigo que estoy usando para tecla oprimida no es correcto. Espero haber sido lo suficientemente claro. Gracias de nuevo.
  #4 (permalink)  
Antiguo 22/09/2010, 12:28
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Teclado con Javascript

Hola

Algo así
Código Javascript:
Ver original
  1. function keyPressed(e){
  2. thisKey= (document.all)?e.keyCode: e.which; // ASCII
  3. if (thisKey==49){ document.location.href='verde.htm'; return false;} // 1
  4. if (thisKey==50){ document.location.href='rojo.htm'; return false;} // 2
  5. ........
  6. alert("Ha pulsado la tecla "+thisKey+", escriba el código para manejar esa tecla");
  7. }
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 23/09/2010, 09:10
 
Fecha de Ingreso: octubre-2009
Mensajes: 11
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Teclado con Javascript !!SOLUCIONADO!!

Hola Adler, ya he interpretado lo que me has dicho, era solo cuestion de pensar un poco, he agregado el codigo "false" para que no devuelva el mensaje de error y ya funciona bien, ha quedado asi:

<body onkeypress="keyPressed(event)">

<script>
function keyPressed(e){
thisKey=String.fromCharCode(e.keyCode);
if (thisKey=="1"){ document.location.href='verde.htm'; return false;}
if (thisKey=="2"){ document.location.href='rojo.htm'; return false;}
if (thisKey=="3"){
}
alert("Ha pulsado la tecla "+thisKey+", escriba el código para manejar esa tecla");
}
</script>

no he modificado nada mas pues solo va a trabajar en una intranet con IE7.

Muchisimas gracias por tu tiempo para colaborar con mi proyecto.
Saludos.

Etiquetas: teclado
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 05:46.