键盘事件包含onkeydown、onkeypress和onkeyup这三个事件

事件初始化

function keyDown(){} 

    document.onkeydown = keyDown; 

    //论按下键盘上的哪个键,都将调用KeyDown()函数。

DOM标准下

function keyDown(e) { 

  	var keycode = e.which;   //取得对应的键值(数字)

  	var realkey = String.fromCharCode(e.which); //取得代表改键的真正字符

  	alert("按键码: " + keycode + " 字符: " + realkey); 

   } 

    document.onkeydown = keyDown

IE下

function keyDown() { 

      var keycode = event.keyCode;   //IE下取得键值的方法

      var realkey = String.fromCharCode(event.keyCode); 

      alert("按键码: " + keycode + " 字符: " + realkey); 

   } 

   document.onkeydown = keyDown

兼容的方法

function keyUp(e) { 

     var currKey=0,e=e||event; 

     currKey=e.keyCode||e.which||e.charCode; 

     var keyName = String.fromCharCode(currKey); 

     alert("按键码: " + currKey + " 字符: " + keyName); 

   } 

   document.onkeyup = keyUp;

使用原则:keydown事件对于功能按键来说是最有用的,而keypress事件对于可打印按键来说是最有用的

以下键码值只有在文本框中才完全有效,如果在<body>标记中使用,只有字母键、数字键和部分控制键可用,其字母键和数字键的键值与ASCII值相同

字母和数字键的键码值(keyCode)

按键    
键码

A          
65

B          
66

C          
67

D          
68

E          
69

F          
70

G          
71

H          
72

I           
73

J           
74

K          
75

L          
76

M         
77

N          
78

O         
79

P          
80

Q         
81

R          
82

S          
83

T          
84

U          
85

V          
86

W         
87

X          
88

Y          
89

Z          
90

0          
48

1          
49

2          
50

3          
51

4          
52

5          
53

6          
54

7          
55

8          
56

9          
57

数字键盘上的键的键码值(keyCode)
功能键键码值(keyCode)

按键    
键码

0
     96

1          
97

2   
    
98

3          
99

4          
100

5          
101

6          
102

7          
103

8          
104

9          
105

*          
106

+          
107

Enter          
108

-           
109

.           
110

/           
111

F1        
112

F2        
113

F3        
114

F4        
115

F5        
116

F6        
117

F7        
118

F8        
119

F9        
120

F10             
121

F11             
122

F12             
123

控制键键码值(keyCode)

按键           
键码

BackSpace         
8

Esc
             27

Right Arrow       
39

Left Arrow
        37

Down Arrow             
40

Up Arrow           
38

-_         
189

.>
        190

Spacebar           
32

Tab             
9

Clear          
12

Page Up             
33

Page Down        
34

Enter          
13

Insert          
45

;:          
186

Delete        
46

`~         
192

/?         
191

Num Lock          
144

Control
    
17

Home         
36

End             
35

Shift            
16

[{          
219

}]          
221

\|         
220

=+        
187

,<         
188

'"          
222

Cape Lock          
20

Alt        
18

javascript之键盘事件的更多相关文章

  1. javascript的键盘事件大全

    javascript的键盘事件大全 ------------------------------------------------------------------- 使用event对象的keyC ...

  2. JavaScript 模拟键盘事件

    JavaScript 模拟键盘事件和鼠标事件(比如模拟按下回车等) 2016年09月08日 15:23:25 神秘_博士 阅读数:41158 标签: javascript鼠标键盘事件模拟更多 个人分类 ...

  3. JavaScript获取键盘事件

    JavaScript中: onkeydown 事件会在用户按下一个键盘按键时发生. onkeypress 事件会在键盘按键被按下并释放一个键时发生. onkeyup 事件会在键盘按键被松开时发生. 支 ...

  4. Javascript鼠标键盘事件

    鼠标事件click:单击dblclick:双击mousedown:鼠标按下mouseup:鼠标抬起mouseover:鼠标悬浮mouseout:鼠标离开mousemove:鼠标移动mouseenter ...

  5. javascript之键盘事件的方法

    键盘事件包含onkeydown.onkeypress和onkeyup这三个事件 事件初始化 function keyDown(){} document.onkeydown = keyDown; //论 ...

  6. javascript/jquery键盘事件介绍

    一.首先需要知道的是:1.keydown()keydown事件会在键盘按下时触发.2.keyup()keyup事件会在按键释放时触发,也就是你按下键盘起来后的事件3.keypress()keypres ...

  7. JavaScript 模拟键盘事件和鼠标事件(比如模拟按下回车等)

    http://blog.csdn.net/lovelyelfpop/article/details/52471878# 封装好的function大概就是这样: function fireKeyEven ...

  8. javascript 键盘事件总结

    原文:http://www.cnblogs.com/rubylouvre/archive/2009/08/20/1550526.html#2583814 在进入正题前,我们看一下浏览器对于键盘的一些默 ...

  9. Javascript 键盘事件

    window.document.onkeydown = function (e) { var evt = window.event || e;//兼容性处理 var keycode = evt.key ...

随机推荐

  1. HDU 1540 Tunnel Warfare(最长连续区间 基础)

    校赛,还有什么途径可以申请加入ACM校队?  Tunnel Warfare Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/ ...

  2. 如何在Google上下载高清原图

    在我们学习和生活中常常一些高清图片作为相关的素材,比如制作PPT.写博文.制作视频都需要大量图片.我们常常会在百度上下载一些图片,但是百度上提供的图片存在很多问题:存在水印.清晰度不够等.而Googl ...

  3. C++是跨平台的语言

    最开始学习Java时,老师就说Java是跨平台的,而c++不是,这里要纠正一下观点,c++也是跨平台的,只不过是实现跨平台的方式不同而已. 1.平台 一般我们把CPU处理器与操作系统的整体叫平台.不同 ...

  4. 《Java技术》的第二次作业

    (一)学习总结 1.什么是构造方法?什么是构造方法的重载?下面的程序是否可以通过编译?为什么? (1) 构造方法用于在创建对象时对其进行初始化,且方法名与类名相同,方法名前面没有返回值类型的声明,不能 ...

  5. expect IDENTIFIER, actual IDENTIFIER 处理

    涉及到注入数据库的报错,这是很常见的了. 但是期望IDENTIFIER,实际IDENTIFIER 的报错,你们知道是什么意思吗? 我已开始看到的时候,是mybatis报错发神经了,报错了报错.再跑一次 ...

  6. numpy.squeeze()是干啥的

    例子: a = 3 print np.squeeze(a) # 输出3 a = [3] print np.squeeze(a) # 输出3 a = [[3]] print np.squeeze(a) ...

  7. php闭包类外操作私有属性

    Closure::bind() Closure::bindTo(); class person{ private $age; private $sex; public function __const ...

  8. Python自动化测试入门

    在当前自动化测试中,最火的语言就是Python,很容易上手.然后就是Java+testng+appium做的UI自动化测试.下面我们就用Python脚本,做自动化集成测试. (1)获取APK文件中ID ...

  9. Oracle中备份用户对象的两种方法

    方法1: 执行步骤: exp userid=用户名/密码@数据库名 file=c:\emp.dmp 使用当前用户导出 exp userid=sys/sys@数据库名 file=c:\emp.dmp o ...

  10. Java不走弯路教程(2.Hello,Java!)

    2.Hello,Java! 欢迎来到Java的世界,在上一章,我们已经完成了DOS的基本操作学习和Java的环境搭建,在本章中我们Java来完成一个简单的DOS程序. 2.1 Hello,Java! ...