JS获取键盘ASCII码代码

来源:互联网 发布:mac os 磁盘清理 编辑:程序博客网 时间:2024/04/30 09:32
<html>


<head>
<meta charset="utf-8">
<title>键盘代码</title>
<style>
<!-- body {
font-family: Verdana;
color: #000080;
font-size: 9pt
}

.STYLE1 {
font-size: 30pt;
font-family: "微软雅黑";
color: #009900;
}

-->
</style>
<script>
function show() {
alert("ASCII代码是:" + event.keyCode +"\n大写字符是:" + String.fromCharCode(event.keyCode));
}
</script>
</head>


<body onkeydown="show()">
<p align="center" class="STYLE1">请按键盘</p>
</body>


</html>









济南今天是大雨倾盆啊,这闷热一扫而空,不过有些电闪雷鸣的,原想在公司里就完成今天的博客记录的,不过不知道为什么怎么也登不上博客,估计是CSDN当时的服务器出问题了吧,好在到了晚上,这雷声小了也少了,才敢继续打开电脑,闲话不多说了,开搞。

很多时候我觉得自己是个奇怪的人,对待同一件事物如果感兴趣了,可以亢奋到不知疲惫,可如果不感兴趣了,每一刻都是煎熬,就好比说跑步,我总感觉长跑是件很痛苦的事情,跑个400都要喘很久,可有朋友邀我拍着篮球去跑,哪怕不耍,不投,就那么单纯的拍着跑,就那样傻跑了好久,关键是还感觉爽极了....

关于对javascript的学习,我总感觉不能那么单调的去看代码,还是要给自己找点乐子,游戏就成了着手点,可以互动更能让人不亦乐乎吧,那么对于一个电脑来说,我们能够实现的互动手段实在是有限的可以:键盘、鼠标,当然如果有触摸屏的话也能算的,而如果想要有效的应用,至少要知道你说的是什么,你告诉它的指令是什么,这就要求我们要更清晰的了解它的传递原理和语法,当然我们都知道机器读的是数字,那要让它如何获取给它的数字指令呢。

这样,我先把写的获取键盘keyCode的方法附上:

html语言

?
1
<div style="width: 500px;height: 200px;background-color: cyan;" id="showZone"></div>
javascript方法:

?
1
2
3
4
document.onkeydown=function(event){
        var event=event||window.event;
        document.getElementById("showZone").innerHTML=event.keyCode;
};
这样我就能获得点击某个按键之后指令了,比如我按下了“1”,它显示了“49”,这就对了。

首先:来分析下这个方法,虽然它已经是老熟人了,碰到了许多次,但是有那么几点,也是今天才搞清楚点

event:function(event)里面的event,我试着去改了名称,也试了直接删掉,在ie里真的不受影响,这样我就相信了那些说法。

ie中存在一个event的内置对象,写上它更多的是因为兼容;

而event在这里也可以随便写,写成event的样式只不过是为了更容易理解;

至于var event=event||window.event,还记得吧,之前还专门写了一篇,现在再去看,狗屁不通,不过有一点是对的,var event=event?event||window.event这样写,真的理解起来更简单一点。

然后,我们来看一下这些按键各自的对应吧,上图:

\

\

\

不得不说网络是个好东西,这些都已经有整理好的,真棒,我们如果真要有游戏操作的话,确实有那么几个需要倍加关注吧,毕竟习惯的力量是巨大的<喎�"http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+YaO6NjWhonejujg3oaJzo7o4M6GiZKO6NjihotfzvP3Nt6O6MzejrMuzyrHV69D916rJz6Gi09Khos/C0sC0zs6qo7ozOKOsMzmjrDQwoaJqo7o3NDwvcD4KPHA+z8jLtdXiw7S8uLj2o6y+zbK70rvSu8HQvtnBy6OsztLDx7u5ysfSqrbgvMfS5LChoaM8L3A+CjxwPjxicj4KPC9wPgo8cD6/ycTcztLX37XEsru/7KOstavO0rvhyMPEx9Cp19+5/bXEwrfB9M/C1+7DwLXEutu8o6OsvNPTzS4uLjwvcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20140620/20140620092135153.jpg" alt="">















window.document.onkeydown = disableRefresh;
function disableRefresh(evt){
evt = (evt) ? evt : window.event
if (evt.keyCode) {
   if(evt.keyCode == 116){
     //do something
   }
}
}
keycode 8 = BackSpace BackSpace
keycode 9 = Tab Tab
keycode 12 = Clear
keycode 13 = Enter
keycode 16 = Shift_L
keycode 17 = Control_L
keycode 18 = Alt_L
keycode 19 = Pause
keycode 20 = Caps_Lock
keycode 27 = Escape Escape
keycode 32 = space space
keycode 33 = Prior
keycode 34 = Next
keycode 35 = End
keycode 36 = Home
keycode 37 = Left
keycode 38 = Up
keycode 39 = Right
keycode 40 = Down
keycode 41 = Select
keycode 42 = Print
keycode 43 = Execute
keycode 45 = Insert
keycode 46 = Delete
keycode 47 = Help
keycode 48 = 0 equal braceright
keycode 49 = 1 exclam onesuperior
keycode 50 = 2 quotedbl twosuperior
keycode 51 = 3 section threesuperior
keycode 52 = 4 dollar
keycode 53 = 5 percent
keycode 54 = 6 ampersand
keycode 55 = 7 slash braceleft
keycode 56 = 8 parenleft bracketleft
keycode 57 = 9 parenright bracketright
keycode 65 = a A
keycode 66 = b B
keycode 67 = c C
keycode 68 = d D
keycode 69 = e E EuroSign
keycode 70 = f F
keycode 71 = g G
keycode 72 = h H
keycode 73 = i I
keycode 74 = j J
keycode 75 = k K
keycode 76 = l L
keycode 77 = m M mu
keycode 78 = n N
keycode 79 = o O
keycode 80 = p P
keycode 81 = q Q at
keycode 82 = r R
keycode 83 = s S
keycode 84 = t T
keycode 85 = u U
keycode 86 = v V
keycode 87 = w W
keycode 88 = x X
keycode 89 = y Y
keycode 90 = z Z
keycode 96 = KP_0 KP_0
keycode 97 = KP_1 KP_1
keycode 98 = KP_2 KP_2
keycode 99 = KP_3 KP_3
keycode 100 = KP_4 KP_4
keycode 101 = KP_5 KP_5
keycode 102 = KP_6 KP_6
keycode 103 = KP_7 KP_7
keycode 104 = KP_8 KP_8
keycode 105 = KP_9 KP_9
keycode 106 = KP_Multiply KP_Multiply
keycode 107 = KP_Add KP_Add
keycode 108 = KP_Separator KP_Separator
keycode 109 = KP_Subtract KP_Subtract
keycode 110 = KP_Decimal KP_Decimal
keycode 111 = KP_Divide KP_Divide
keycode 112 = F1
keycode 113 = F2
keycode 114 = F3
keycode 115 = F4
keycode 116 = F5
keycode 117 = F6
keycode 118 = F7
keycode 119 = F8
keycode 120 = F9
keycode 121 = F10
keycode 122 = F11
keycode 123 = F12
keycode 124 = F13
keycode 125 = F14
keycode 126 = F15
keycode 127 = F16
keycode 128 = F17
keycode 129 = F18
keycode 130 = F19
keycode 131 = F20
keycode 132 = F21
keycode 133 = F22
keycode 134 = F23
keycode 135 = F24
keycode 136 = Num_Lock
keycode 137 = Scroll_Lock
keycode 187 = acute grave
keycode 188 = comma semicolon
keycode 189 = minus underscore
keycode 190 = period colon
keycode 192 = numbersign apostrophe
keycode 210 = plusminus hyphen macron
keycode 211 =
keycode 212 = copyright registered
keycode 213 = guillemotleft guillemotright
keycode 214 = masculine ordfeminine
keycode 215 = ae AE
keycode 216 = cent yen
keycode 217 = questiondown exclamdown
keycode 218 = onequarter onehalf threequarters
keycode 220 = less greater bar
keycode 221 = plus asterisk asciitilde
keycode 227 = multiply division
keycode 228 = acircumflex Acircumflex
keycode 229 = ecircumflex Ecircumflex
keycode 230 = icircumflex Icircumflex
keycode 231 = ocircumflex Ocircumflex
keycode 232 = ucircumflex Ucircumflex
keycode 233 = ntilde Ntilde
keycode 234 = yacute Yacute
keycode 235 = oslash Ooblique
keycode 236 = aring Aring
keycode 237 = ccedilla Ccedilla
keycode 238 = thorn THORN
keycode 239 = eth ETH
keycode 240 = diaeresis cedilla currency
keycode 241 = agrave Agrave atilde Atilde
keycode 242 = egrave Egrave
keycode 243 = igrave Igrave
keycode 244 = ograve Ograve otilde Otilde
keycode 245 = ugrave Ugrave
keycode 246 = adiaeresis Adiaeresis
keycode 247 = ediaeresis Ediaeresis
keycode 248 = idiaeresis Idiaeresis
keycode 249 = odiaeresis Odiaeresis
keycode 250 = udiaeresis Udiaeresis
keycode 251 = ssharp question backslash
keycode 252 = asciicircum degree
keycode 253 = 3 sterling
keycode 254 = Mode_switch
使用event对象的keyCode属性判断输入的键值
eg:if(event.keyCode==13){
var ieKey=event.keyCode;//获得键值,数字形式的
var realkey=String.fromCharCode(ieKey) //将数字形式的键值转化为真实的按键
alert(realkey);
}
键值对应表
A  0X65  U   0X85
B  0X66  V   0X86
C  0X67  W   0X87
D  0X68  X   0X88
E  0X69  Y   0X89
F  0X70  Z   0X90
G  0X71  0   0X48
H  0X72  1   0X49
I  0X73  2   0X50
J  0X74  3   0X51
K  0X75  4   0X52
L  0X76  5   0X53
M  0X77  6   0X54
N  0X78  7   0X55
O  0X79  8   0X56
P  0X80  9   0X57
Q  0X81 ESC  0X1B
R  0X82 CTRL  0X11
S  0X83 SHIFT 0X10
T  0X84 ENTER 0XD
如果要使用组合键,则可以利用event.ctrlKey,event.shiftKey,event .altKey判断
是否按下了ctrl键、shift键以及alt键

0 0