charCode 事件属性

返回上一级

HTML DOM 事件属性 charCode 返回 onkeypress 事件触发键值的字母代码

语法

event.charCode

浏览器支持

Yes 9.0+ Yes Yes Yes

返回值

数字,表示 Unicode 字符代码

说明

Unicode 字符代码是一个字母的数字 (如数字 "97" 代表字母 "a")

所有 Unicode 字符列表可查看我们的 完整 Unicode 参考手册

如果需要将 Unicode 值转换为字符,可以使用 fromCharCode() 方法

如果该属性用于 onkeydown 或 onkeyup 事件,返回值总为 "0"

该属性是只读的

which 和 keyCode 属性提供了解决浏览器的兼容性的方法,最新版本的 DOM 事件推荐使用 key 属性来替代该方法

IE8 及其更早版本不支持 which 属性。不支持的浏览器可使用 keyCode 属性。但是, keyCode 属性在 Firefox 浏览器的 onkeypress 事件中是无效的。 兼容这些浏览器你可以使用以下代码

//  使用 **charCode** 或 **keyCode** , 这样可支持不同浏览器
var x = event.charCode || event.keyCode; 

同样可以使用 keyCode 属性来检测特殊的按键 (如 "caps lock" 或 箭头按键), keyCode 和 charCode 属性提供了解决浏览器的兼容性的方法,最新版本的 DOM 事件推荐使用 key 属性来替代该方法

如果想查看是否按下了 "ALT", "CTRL", "META" 或 "SHIFT" 键,可使用 altKey , ctrlKey , metaKey 或 shiftKey 属性

范例

获取按下的键盘按键 Unicode 值

var x = event.charCode;

运行范例 »

范例

获取按键 Unicode 值的浏览器兼容解决办法

// 如果浏览器不支持 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 是 111, O 是 79        
        alert("你按下了 'O' 键!");
    }
}

运行范例 »

范例

将 Unicode 值转换为字符

var x = event.charCode || evt.keyCode; // 获取 Unicode 值
var y = String.fromCharCode(x); // 将值转换为字符

运行范例 »

相关页面

HTML DOM 参考手册: key 事件属性

HTML DOM 参考手册: keyCode 事件属性

HTML DOM 参考手册: which 事件属性

返回上一级

JavaScript 参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

♥   简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.