如何知道 .keyup() 是否为字符键(jQuery)
$("input").keyup(function() {
if (key is a character) { //such as a b A b c 5 3 2 $ # ^ ! ^ * # ...etc not enter key or shift or Esc or space ...etc
/* Do stuff */
}
});
最佳答案
您不能通过 keyup
事件可靠地做到这一点。 如果您想知道有关输入字符的信息,您必须改用 keypress
事件。
以下示例将在大多数浏览器中始终有效,但您应该注意一些边缘情况。对于我认为这方面的权威指南,请参阅 http://unixpapa.com/js/key.html .
$("input").keypress(function(e) {
if (e.which !== 0) {
alert("Charcter was typed. It was: " + String.fromCharCode(e.which));
}
});
keyup
和 keydown
为您提供有关按下的物理键的信息。在标准布局的标准美国/英国键盘上,这些事件的 keyCode
属性与它们所代表的字符之间似乎存在关联。然而,这并不可靠:不同的键盘布局会有不同的映射。
关于javascript - 如何知道 .keyup() 是否是字符键(jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3977642/