在文本框的KeyDown事件,我可以檢查一個範圍的keyCodekeydown事件代碼
的對於如:
if (e.keyCode == 90 to 97 || e.keyCode == 104 to 110)
如何寫這個正確的方法是什麼?
在文本框的KeyDown事件,我可以檢查一個範圍的keyCodekeydown事件代碼
的對於如:
if (e.keyCode == 90 to 97 || e.keyCode == 104 to 110)
如何寫這個正確的方法是什麼?
var inInterval = function (code, min, max) {
return code >= min && code <= max;
};
if (inInterval(e.keyCode, 90, 97) || inInterval(e.keyCode, 104, 110))
或者,一點點更好:
var interval = function (min, max) {
return {
min: min,
max: max,
contains : function (elem) {
return this.min <= elem && elem <= this.max;
}
};
};
interval(90, 98).contains(92); // true
interval(90, 98).contains(15); // false
if ((e.keyCode > 89 && e.keyCode < 98) || (e.keyCode > 103 && e.keyCode < 111))
或:
if ((e.keyCode >= 90 && e.keyCode <= 97) || (e.keyCode >= 104 && e.keyCode <= 110))
if ((90 <= e.keyCode && e.keyCode <= 97) || (104 <= e.keyCode && e.keyCode <= 110))
var myKeycodes = [1,2,3,4,5,6];
if(myKeycodes.indexOf(e.keyCode) != -1){
// your keycode is in the array, do stuff
}
在IE中不會工作。 – 2009-09-15 14:02:15
+1,但不會'> ='和'<='更直觀? – 2009-09-15 14:00:43
@Philippe萊伯特 - 編輯,以適應這兩種口味:) – karim79 2009-09-15 14:04:21