我想在输入字段上检测这两个行为:
1)退格键
2)“@”和“#”键
通过使用jQuery的keypress
函数,我能够检测特殊字符,但不能检测退格。
链接 - > How to know if .keyup() is a character key (jQuery)
通过使用jQuery的keyup
/ keydown
,我能够检测退格,但不能检测特殊字符。
链接 - > jQuery: keyPress Backspace won't fire?
如何检测这两种行为?
注意:Keypress
只能在firefox中检测退格。 Chrome无法检测到此信息。
答案 0 :(得分:0)
您可以使用以下代码段:
var keys = {};
$('input').keydown(function (e) {
keys[e.which] = true;
});
$('input').keyup(function (e) {
getKeys();
delete keys[e.which];
});
function getKeys() {
if(keys[8]) {
alert('bakspace pressed');
}else if(keys[17] && keys[18] && keys[48]) {
alert('@ pressed');
}else if(keys[17] && keys[18] && keys[51]) {
alert('# pressed');
}
}