我想在输入字段中检测这两种行为:
1)Backspace键
2)"@“和"#”键
通过使用jQuery的keypress函数,我能够检测特殊字符,但不能检测回退。链路-> How to know if .keyup() is a character key (jQuery)
通过使用jQuery的keyup/keydown,我能够检测后台空间,但不能检测特殊字符。链路-> jQuery: keyPress Backspace won't fire?
我怎样才能发现这两种行为?
注意:Keypress只能检测火狐中的后置空间。Chrome没有检测到这个。
发布于 2014-05-02 14:38:03
您可以使用以下代码片段:
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');
}
}
DEMO
https://stackoverflow.com/questions/23430245
复制相似问题