0

我正在尝试使用 jquery 来覆盖默认的选项卡导航。我不能简单地使用 tabindex 属性,因为我试图让 tab 键从文本输入导航到虚拟化文本框(codemirror)。我一直在尝试使用以下 javascript/jquery 无济于事:

$('#modelName').focus(function() { 
    $(this).keydown( function(event) {
        if(event.keyCode=='9') {
            codeMirror.focus();
        }
    });
});

关于如何使这项工作的任何想法?

4

2 回答 2

1
  $('#modelName').keydown( function(event) {
    if(event.keyCode == 9) {
        event.preventDefault();
        codeMirror.focus();
    }else{
        alert("Not the right key! " + event.keyCode);   
    }
  });

有一个捕捉是很好的,这样你就可以看到你哪里出错了。在这种情况下,我认为它是字符串与整数。

keydown此外,按照您的代码的方式,每次获得焦点时您都将应用一个新的事件处理程序#modelName,而不会删除旧的事件处理程序。以后可能会出问题。

于 2012-05-24T05:11:44.003 回答
0

试试这个

$('#modelName').keyup(function (e) {
    if(e.keyCode== 9){
    codeMirror.focus();
    }
});

使用 keyup() 而不是 keydown()

于 2012-05-24T05:15:36.653 回答