jquery – preventDefault()不适用于Firefox 9.0.1中的SELECT元素

前端之家收集整理的这篇文章主要介绍了jquery – preventDefault()不适用于Firefox 9.0.1中的SELECT元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我意识到有其他问题,preventDefault()不能使用Firefox,但他们没有帮助我.

我有三个SELECT列表,我想要的是使用箭头键在它们之间进行导航,而不改变任何值.该代码在Chrome中运行良好,但在Firefox中,它会移动焦点,然后更改刚刚移动到的元素上的值.

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>

解决方法

nsListControlFrame :: KeyPress在 http://mxr.mozilla.org/mozilla-central/source/layout/forms/nsListControlFrame.cpp似乎不检查默认动作是否被阻止.提出错误
原文链接:https://www.f2er.com/jquery/176424.html

猜你在找的jQuery相关文章