我在jQuery中编写事件处理程序。我想为特定动作使用一组特定的键(例如箭头键)。这是否有简写符号?
我有这个。
if(event.keycode == 37 || event.keyCode == 38 || event.keyCode == 39)
我想知道JavaScript中是否有范围,如(37..40)?
提前致谢!
答案 0 :(得分:2)
if(event.keycode >= 37 && event.keyCode <= 39)
在我看来并不是更好,如果你只有几个关键词,那么我会将它们全部包含在if中以获得更好的代码清晰度。
答案 1 :(得分:1)
您可以使用比较运算符来实现范围效果,如下所示:
// keep a local reference to avoid consequent requests
var keyCode = event.keyCode;
// check if key code is in range
if(keyCode >= 37 && keyCode <= 40){
// in range, do something
} else{
// out of range, do something else
}
答案 2 :(得分:1)
此:
var code = event.keycode;
if (code >= 37 && code < 40) { /* ... */ }
或(不确定IE):
var code = event.keycode;
if ([37, 38, 39].indexOf(code) != 1) { /* ... */ }