//document的鍵盤事件
//鍵盤事件參數
//e.charCode:最後響應鍵盤按鍵的鍵值
//e.keyCode: 最後響應鍵盤按鍵的鍵值
//e.ctrlKey,e.shiftKey,e.altKey:判斷組合鍵時,是否按下
//輸出鍵盤的ASCII值
//鍵值:(a:65 z:90),(0:48 9:57),(tab:9 enter:13, ctrl:17 shift:16 alt:18 空格:32 )
$(document).keydown(function(e){
alert(e.keyCode);
});
//鍵值(a:97 z:122),(0:48 9:57)
$(document).keypress(function(e){
alert(e.keyCode);
});
//方向鍵判斷,(上:38 下40: 左:37 右:39)
$(document).keydown(function(e){
if(e.keyCode ==37){
alert("當前是左");
}
elseif(e.keyCode ==38){
alert("當前是上");
}
elseif(e.keyCode ==39){
alert("當前是右");
}
elseif(e.keyCode ==40){
alert("當前是下");
}
})
//組合鍵判斷
$(document).keydown(function(e){
//ctrl+enter
if(e.ctrlKey && e.keyCode ==13){
alert("ctrl+enter組合鍵觸發");
}
//ctrl+alt
if(e.ctrlKey && e.altKey){
alert("ctrl+alt組合鍵觸發");
}
//ctrl+alt+enter
if(e.ctrlKey && e.altKey && e.keyCode ==13){
alert("ctrl+alt+enter組合鍵觸發");
}
//ctrl+shift+delete
if(e.ctrlKey && e.shiftKey && e.keyCode ==46){
alert("ctrl+shif+delete組合鍵觸發");
}
});
//獲取鍵盤字符
//e.charCode:在keydown事件中總爲0,在keypress事件中爲e.keyCode
//e.char:在keydown事件和keypress事件中返回相同都是返回字符
$(document).keydown(function(e){
alert(e.charCode);
});
$(document).keypress(function(e){
alert(e.charCode);
});
$(document).keydown(function(e){
alert(e.char);
});
$(document).keypress(function(e){
alert(e.charCode);
});
//鍵盤事件的觸發順序
//使用彈出對話框的方式檢測,不靠譜
//在三個事件都註冊的情況先:先觸發keydown,在觸發keypress,沒有觸發keyup
//只有在keydown和keypress沒有註冊的時候纔會觸發keyup
$(document).keydown(function(e){
alert("keydown");
});
$(document).keypress(function(e){
alert("keypress");
});
$(document).keyup(function(){
alert("keyup");
});
var str ="";
$("#txtOne").keydown(function(e){
str +="keydown----->";
});
$("#txtOne").keypress(function(e){
str +="keypress----->";
});
$("#txtOne").keyup(function(){
str +="keyup----->";
alert(str);
});
//鍵盤事件的完成
//判斷輸入的是否是數字,否則自動完成事件不顯示內容(適用於非中文輸入法)
$("#txtOne").keypress(function(e){
if(e.keyCode >=48&& e.keyCode <=57){
}
else{
alert("輸入的不是數字");
e.preventDefault();
}
});
//判斷輸入的是否是數字,否則自動完成事件不顯示內容(適用於中文輸入法和其他)
$("#txtOne").keydown(function(e){
if(e.keyCode >=48&& e.keyCode <=57){
}
else{
alert("輸入的不是數字");
e.preventDefault();
}
});