Tengo un botón y la siguiente rutina de javascript.¿Por qué el retorno falso en la devolución de llamada por clave no detiene el evento de clic de botón?
$("button").keydown(function(key) {
switch(key.keyCode) {
case 32: //space
return false;
}
});
como lo entendía, la return false;
sería detener la pulsación de tecla de ser procesada. Por lo tanto, no se llamará a $("button").click();
. Para otros KeyCodes esto funciona como se esperaba. Por ejemplo, si intercepto 40
, que es el botón de abajo, la página no se desplaza.
me di cuenta de este comportamiento en Firefox.
¿Por qué la return false;
no se detiene el evento de clic de botón en el espacio? ¿Qué dice la especificación javascript sobre esto?
es lo que realmente dicen "retorno fale" en su código real? Si es así, ese podría ser tu problema. fale. – rmeador
En su fragmento de código tiene "return fale;" - ¿Es este el código tal como existe? si es así, es un error tipográfico simple. – artlung
No I mi código real devuelve falso. De hecho, uso este código para interceptar otros botones como abajo, y funciona para ellos. – johannes