Estoy trabajando con el campo de texto HTML básico <input type="text"/>
con un valor numérico.Prevenir el comportamiento predeterminado en la entrada de texto mientras se presiona la flecha hacia arriba
Estoy agregando el evento de JavaScript keyup
para ver cuando el usuario presiona la tecla de flecha hacia arriba (e.which == 38
) - luego incremente el valor numérico.
El código funciona bien, pero hay una cosa que me molesta. Tanto Safari/Mac como Firefox/Mac mueven el cursor desde el principio cuando estoy presionando la tecla de flecha hacia arriba. Este es un comportamiento predeterminado para cada campo de texto <input type="text"/>
por lo que sé y tiene sentido.
Pero esto no crea un efecto muy estético del cursor al saltar hacia adelante y hacia atrás (después de que se modificó el valor).
El salto al principio ocurre en keydown
pero incluso con este conocimiento no puedo evitar que ocurra. He intentado lo siguiente:
input.addEventListener('keydown', function(e) {
e.preventDefault();
}, false);
Poner en e.preventDefault()
keyup
caso no ayuda tampoco.
¿Hay alguna manera de evitar que el cursor se mueva?
¡Lo rompió! Muchas gracias, es perfecto. :) – riddle
¡Vota por "kludge"! Trabajó para mí, gracias por la respuesta. – NotJay