Me doy cuenta de que hay otras preguntas en prevenirDefault() que no funcionan con Firefox, pero no me ayudaron.preventDefault() no funciona en elementos SELECCIONAR en Firefox 9.0.1
Tengo tres listas SELECT, y todo lo que quiero es navegar entre ellas con las teclas de flecha sin cambiar ninguno de los valores. El código funciona muy bien en Chrome, pero en Firefox mueve el foco y luego cambia el valor del elemento al que se acaba de mover.
http://jsbin.com/ofitif/3/edit
JavaScript:
$(document).ready(function() {
$('.myinput').keydown(function (evt) { onkeydown(evt); });
$('.myinput:first').focus();
});
function onkeydown(evt) {
evt.preventDefault();
console.log(evt.which);
if(evt.which == 39) {
$(document.activeElement).next().focus();
}
else if(evt.which == 37) {
$(document.activeElement).prev().focus();
}
}
HTML:
<div id="inputs">
<select class="myinput">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<select class="myinput">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<select class="myinput">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
</div>
Gracias por la edición @Andrew Whitaker. Me aseguraré de incluir el código la próxima vez. – Ace