我有一个问题我似乎无法解决。
我有一个带有自定义样式按钮(input type=button)的表单。在文本字段中键入时,我希望人们能够按TAB键并转到按钮。但是,它不会使用制表符索引,所以我的解决方案是突出显示标签并更改CSS以使按钮具有新的边框颜色。但是,在除Firefox之外的任何浏览器中,按键都不会改变边框颜色。
以下是我所拥有的:

$(function() {
    $("#email").bind("keypress", function(e) {
            if (e.keyCode == 13) {
                send();
                return false;

            };

            if (e.keyCode == 9) {
                    $("#submit_btn").removeClass('submit1').addClass('submit1after');
            };

      });
};

第一个enter键是序列化并通过电子邮件发送表单和所有内容。
我好像一辈子都无法让它起作用。我做错什么了?有没有更好的方法来解决我想要完成的事情?
谢谢你抽出时间,
阿米克

最佳答案

使用keydown来代替,对于我来说是有效的(请参见演示:http://jsfiddle.net/npGtX/2/

$(function () {
  $("#email").bind("keydown", function (e) {
    if (e.keyCode == 13) {
      send();
      return false;
    };

    if (e.keyCode == 9) {
      $("#submit_btn").removeClass('submit1').addClass('submit1after');
    };
  });
};

我还发现了这个:Suppressing keyPress for non-character keys?
当按键不是
性格。所以浏览器可能不会在backspace,F1,
下键等。

关于javascript - 按键更改jQuery中的类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12066745/

10-12 12:30
查看更多