我试图弄清楚按键何时是空白,所以我做了以下事情:
if (e.which == ' '){
}
但是这不起作用。知道为什么吗?
event.which
返回按下的字符的代码。space关键代码是32
,因此请改用它:
if (e.which === 32) {
//
}
另一种方法是将字符转换为字符代码.charCodeAt()
:
if (e.which === " ".charCodeAt(0)) {
//
}
检查: http: //www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes
编写测试代码并提醒 keyCode 是什么。
document.onkeypress = function(e) {
e = e || window.event;
console.log(e.keyCode || e.which);
};
学习调试,你就不会问这些简单的问题。
jQuery本来是
$(document).keypress(
function (e) {
console.log(e.which);
}
);
可能这就是您要查找的内容:(假设您使用 keydown 事件。)
if(e.keyCode == '32') {
// Your code
}
jsFiddle:http: //jsfiddle.net/DeHFL/