JavaScript HTML DOM charCode 事件属性

  • 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属性来检测特殊键(例如“大写锁定”或箭头键)。但是,keyCodecharCode属性仅用于兼容性。最新版本的DOM事件规范建议使用 密钥属性(如果可用)。
    提示:如果要确定在发生键事件时是否按下了“ALT”,“CTRL”,“META”或“SHIFT”键,请使用altKeyctrlKeymetaKeyshiftKey属性。
    获取按下的键盘键的Unicode值:
    var x = event.charCode;
    
    尝试一下
  • 浏览器支持

    IE/Edge Chrome FireFox Safari Opera
    属性
    charCode
    9.0+
    支持
    支持
    支持
    支持
  • 语法

    event.charCode
  • 技术细节

    项目 描述
    返回值: 一个数字,表示Unicode字符代码
    DOM版本 DOM Event Level 2
  • 更多例子

    一种跨浏览器解决方案,用于获取按下的键盘键的Unicode值:
    // 如果浏览器支持charCode,请使用charCode,否则使用keyCode(对于IE8及更早版本)
    var x = event.charCode || event.keyCode;
    
    尝试一下
    如果用户按下“O”键,则提醒一些文本:
    function myFunction(event) {
      var x = event.charCode || event.keyCode;
      if (x == 111 || x == 79) { // o is 111, O is 79
        alert("You pressed the 'O' key!");
      }
    }
    
    尝试一下
    将Unicode值转换为字符:
    var x = event.charCode || evt.keyCode;   // 获取Unicode值
    var y = String.fromCharCode(x);          // 将值转换为字符
    
    尝试一下
  • 相关页面

    HTML DOM参考:KeyboardEvent ctrlKey属性
    HTML DOM参考:KeyboardEvent metaKey属性
    HTML DOM参考:KeyboardEvent shiftKey属性