javascript – keydown事件的keycode

我正在使用keydown事件

我在哪里获得密码并将其转换为charcode.

但我遇到了一个问题,在键盘按下2它给50和charcode为2

当我在numpad中按2时它给出了键码98,所以当我转换charcode a时

解决方法

这是因为你正在使用keyCode成员,例如,小写’a’和大写’A’具有相同的keyCode,因为是相同的键,但是不同的charCode,因为结果字符是不同的.

获取charCode,您应该使用keypress事件,并获取event.charCode成员(如果可用),否则,您将获得event.keyCode,对于IE,在keypress事件上具有正确的信息.

看看下面的example

document.onkeypress = function (e) { 
  e = e || window.event; 
  var charCode = e.charCode || e.keyCode,character = String.fromCharCode(charCode); 

  alert(character);
};

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...