KeyboardEvent charCode 屬性

定義和用法

charCode 屬性返回觸發 onkeypress 事件 的鍵的 Unicode 字符代碼。

Unicode 字符代碼是一種字符的編號(例如數字 "97" 代表字母 "a")。

提示:有關所有 Unicode 字符的列表,請參閱我們的 完整 Unicode 參考

提示:如果要將 Unicode 值轉換為字符,請使用 fromCharCode() 方法

注釋:如果該屬性用于 onkeydownonkeyup 事件,則返回值始終為 "0"。

注釋:該屬性只讀。

注釋:IE8 及更早版本不支持 charCode 屬性。但是,對于這些瀏覽器版本,您可以使用 keyCode 屬性。或者,針對跨瀏覽器解決方案,您可以使用如下代碼:

var x = event.charCode || event.keyCode; // 使用 charCode 還是 keyCode,取決于瀏覽器支持

提示:您還可以使用 keyCode 屬性來檢測特殊鍵(例如大寫鎖定或方向鍵)。但是,同時提供 keyCode 和 charCode 屬性只是為了兼容性。最新版本的 DOM 事件規范建議改用 key 屬性(如果可用)。

提示:如果您想知道在發生按鍵事件時是否按下了 "ALT"、"CTRL"、"META" 或 "SHIFT" 鍵,請使用 altKeyctrlKey/、metaKeyshiftKey 屬性。

實例

例子 1

獲取按下的鍵盤鍵的 Unicode 值:

var x = event.charCode;

親自試一試

例子 2

獲取所按鍵盤鍵的 Unicode 值的跨瀏覽器解決方案:

// 如果瀏覽器支持,則使用 charCode,否則使用 keyCode(適用于 IE8 及更早版本)
var x = event.charCode || event.keyCode;

親自試一試

例子 3

如果用戶按下 "O" 鍵,則提示一些文本:

function myFunction(event) {
  var x = event.charCode || event.keyCode;
  if (x == 111 || x == 79) { // o 是 111,O 是 79
    alert("You pressed the 'O' key!");
  }
}

親自試一試

例子 4

將 Unicode 值轉換為字符:

var x = event.charCode || evt.keyCode;   // 獲取 Unicode 值
var y = String.fromCharCode(x);          // 把值轉換為字符

親自試一試

語法

event.charCode

技術細節

返回值: 數字值,表示 Unicode 字符代碼。
DOM 版本: DOM Level 2 Events

瀏覽器支持

表中的數字注明了完全支持該屬性的首個瀏覽器版本。

屬性 Chrome IE Firefox Safari Opera
charCode 支持 9.0 支持 支持 支持

相關頁面

HTML DOM 參考手冊:KeyboardEvent key 屬性

HTML DOM 參考手冊:KeyboardEvent keyCode 屬性

HTML DOM 參考手冊:KeyboardEvent which 屬性