我正在尝试为我正在处理的应用设置一些密钥代码,但这确实让我发疯。
我正在尝试设置密钥代码,从keyCode 65到91,44,47和其他几个密码代码都可以运行。
所以我有这个:
var e = event || evt;
if ((e.keyCode > 65 || e.Keycode < 91)){
// Do function
}
找到了。现在,如果我尝试添加另一个键码,它将无效。 这就是我试过的:
if ((e.keyCode > 65 || e.Keycode < 91) && (e.keyCode == 44) && (e.keyCode == 47)){
有人帮我在一个If语句中添加不同的密钥代码吗?
非常感谢
答案 0 :(得分:3)
试试这个
if (
// get all the keys between 65-90
(e.keyCode >= 65 && e.keyCode <= 90)
// or 44 or 47
|| e.keyCode == 44 || e.keyCode == 47)
{
// do stuff
}
如果条件逻辑绊倒你,我认为你可能最好考虑你想要包括(不排除)的数字。将它们分成范围并将每个范围放在自己的行上。从伪代码开始:
if
// keys between 31-47
// or keys between 58-90
then
// do stuff
end
然后填写条件:
if (
// keys between 31-47
(e.keyCode >= 31 && e.keyCode <= 47)
// or keys between 58-90
|| (e.keyCode >= 58 && e.keyCode <= 90)
)
{
// do stuff
}
答案 1 :(得分:0)
如果你想要的东西从31到90,除了48到57之外:
if (e.keyCode >= 31 && e.keyCode <= 90 && !(e.keyCode >= 48 && e.keyCode <= 57)) {
// whatever
}
现在可以写成:
if (e.keyCode >= 31 && e.keyCode <= 47 || e.keyCode >= 58 && e.keyCode <= 90) {
// whatever
}
答案 2 :(得分:-1)
if ((e.keyCode > 65 && e.Keycode < 91) || e.keyCode == 44 || e.keyCode == 47){
//do stuff
}