这是我的代码:
$button.on('keyup', function (event) {
// Detect an Enter keypress
if(event.keyCode === 13) {
doStuff();
}
});
如您所见,密钥代码13
是硬编码的。是否有(跨浏览器)方式以更具语义意义的方式消除该数字?
答案 0 :(得分:9)
如果您使用 jQueryUI ,则可以使用$.ui.keyCode
常量:
keyCode: {
BACKSPACE: 8,
COMMA: 188,
DELETE: 46,
DOWN: 40,
END: 35,
ENTER: 13,
ESCAPE: 27,
HOME: 36,
LEFT: 37,
NUMPAD_ADD: 107,
NUMPAD_DECIMAL: 110,
NUMPAD_DIVIDE: 111,
NUMPAD_ENTER: 108,
NUMPAD_MULTIPLY: 106,
NUMPAD_SUBTRACT: 109,
PAGE_DOWN: 34,
PAGE_UP: 33,
PERIOD: 190,
RIGHT: 39,
SPACE: 32,
TAB: 9,
UP: 38
}
所以为了检查 Enter 按下使用:
if (event.keyCode === $.ui.keyCode.ENTER) { ... }
答案 1 :(得分:1)
重复Alex K.
的答案(我用过):
"\r".charCodeAt(0)