更多"Try it Yourself"下面的例子。
定義和用法
keyCode屬性返回觸發鍵的Unicode字符代碼onkeypress事件的事件,或者觸發關鍵的Unicode鍵碼的onkeydown或的onkeyup事件。
兩個代碼類型之間的區別:
- 字符代碼 - 一個數字表示一個ASCII字符
- 鍵碼 - 一個數字代表了鍵盤上的實際鍵
這些類型並不總是意味著同樣的事情; 例如,較低的情況下"w"和上殼體"W"具有相同的鍵盤代碼,因為當按下鍵盤上的鍵是相同的(just "W" = the number "87") ,但具有不同字符代碼,因為所得到的字符是不同的(任一"w"或"W"這是"119"或“87”) -參見"More Examples"下面,以更好地理解它。
提示:要了解,如果用戶按下打印鍵(如"a"或“5”),建議使用此屬性的onkeypress事件的事件。 要了解,如果用戶按下功能鍵(如"F1" "CAPS LOCK"或“家庭”)使用的onkeydown或onkeyup事件。
注:在Firefox中,keyCode屬性不會在onkeypress事件事件工作(will only return 0) 對於跨瀏覽器的解決方案,使用,其與鍵代碼,例如一起屬性:
var x = event.which || event.keyCode; // Use either which or keyCode ,
depending on browser support
提示:對於所有Unicode字符的列表,請學習我們完整的Unicode參考 。
提示:如果你想返回的Unicode值轉換為字符,使用fromCharCode()方法。
注:此屬性是只讀的。
注意:兩個鍵代碼和屬性僅供兼容性。 在DOM事件規範的最新版本建議使用關鍵屬性,而不是(if available) 。
提示:如果你想找出是否"ALT" "CTRL" "META"或"SHIFT"鍵被按下時的一個關鍵事件發生時,使用方altKey , 中ctrlKey , metaKey或Shift鍵,財產。
瀏覽器支持
屬性 | |||||
---|---|---|---|---|---|
keyCode | 是 | 是 | 是 | 是 | 是 |
句法
event .keyCode
技術細節
返回值: | 一個數字,表示無論是Unicode字符碼或Unicode的關鍵碼 |
---|---|
DOM版本: | 2級DOM事件 |
更多示例
例
使用onkeypress事件和onkeydown事件證明字符代碼和鍵盤碼之間的差異:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)">
function uniCharCode(event) {
var char = event.which ||
event.keyCode;
document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " +
char;
}
function uniKeyCode(event) {
var key = event.keyCode;
document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key;
}
當按下"a"在鍵盤上鍵(not using caps lock) , 炭和關鍵將是的結果:
Unicode CHARACTER code: 97
Unicode KEY
code: 65
試一試» 例
提醒一些文本,如果用戶按下Esc鍵:
<input type="text" onkeydown="myFunction(event)">
function
myFunction(event) {
var x = event.keyCode;
if (x == 27) { // 27 is the ESC key
alert ("You pressed the Escape key!");
}
}
試一試» 例
轉換的Unicode值到字符(does not work for function keys) :
var x = event.keyCode; // Get the Unicode value
var y = String.fromCharCode(x);
// Convert the value into a character
試一試» 相關頁面
HTML DOM參考: KeyboardEvent key Property
HTML DOM參考: KeyboardEvent charCode Property
HTML DOM參考: KeyboardEvent which Property
<事件對象