javascript Keycode对照表

所属分类: 网络编程 / JavaScript 阅读数: 516
收藏 0 赞 0 分享

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

字母和数字键的键码值(keyCode)
按键 键码 按键 键码 按键 键码 按键 键码
A 65 J 74 S 83 1 49
B 66 K 75 T 84 2 50
C 67 L 76 U 85 3 51
D 68 M 77 V 86 4 52
E 69 N 78 W 87 5 53
F 70 O 79 X 88 6 54
G 71 P 80 Y 89 7 55
H 72 Q 81 Z 90 8 56
I 73 R 82 0 48 9 57

数字键盘上的键的键码值(keyCode) 功能键键码值(keyCode)
按键 键码 按键 键码 按键 键码 按键 键码
0 96 8 104 F1 112 F7 118
1 97 9 105 F2 113 F8 119
2 98 * 106 F3 114 F9 120
3 99 + 107 F4 115 F10 121
4 100 Enter 108 F5 116 F11 122
5 101 - 109 F6 117 F12 123
6 102 . 110        
7 103 / 111        

控制键键码值(keyCode)
按键 键码 按键 键码 按键 键码 按键 键码
BackSpace 8 Esc 27 Right Arrow 39 -_ 189
Tab 9 Spacebar 32 Dw Arrow 40 .> 190
Clear 12 Page Up 33 Insert 45 /? 191
Enter 13 Page Down 34 Delete 46 `~ 192
Shift 16 End 35 Num Lock 144 [{ 219
Control 17 Home 36 ;: 186 \| 220
Alt 18 Left Arrow 37 =+ 187 ]} 221
Cape Lock 20 Up Arrow 38 ,< 188 '" 222

多媒体键码值(keyCode)
按键 键码 按键 键码 按键 键码 按键 键码
音量加 175            
音量减 174            
停止 179            
静音 173            
浏览器 172            
邮件 180            
搜索 170            
收藏 171            

js简记表

数字值 实际键值
48到57 0到9
65到90 a到z(A到Z)
112到135 F1到F24
8 BackSpace(退格)
9 Tab
13 Enter(回车)
20 Caps_Lock(大写锁定)
32 Space(空格键)
37 Left(左箭头)
38 Up(上箭头)
39 Right(右箭头)
40 Down(下箭头)

使用示例:

组合键

if ((window.event.ctrlKey)&&(window.event.keyCode==49))

alert("您按下了CTRL+1键");

从以上例子可以看出,shift、Control、Alt 在JS中也可用“window.event.shiftKey”、“window.event.ctrlKey”、“window.event.altKey” 代替。

Internet Explorer/Chrome 浏览器使用 event.keyCode 取回被按下的字符,而 Netscape/Firefox/Opera 等浏览器使用 event.which。

获取用户按下的键

下面是一个利用 onkeydown 事件获取用户按下键盘按键信息的例子:

<html>
<body>
<script type="text/javascript">

function noNumbers(e)
{
    var keynum;
    var keychar;

    keynum = window.event ? e.keyCode : e.which;
    keychar = String.fromCharCode(keynum);
    alert(keynum+':'+keychar);
}

</script>
<input type="text" onkeydown="return noNumbers(event)" />
</body>
</html>

如上面例子所示,event.keyCode/event.which 得到的是一个按键对应的数字值(Unicode 编码),常用键值对应如下:

在 Web 应用中,常常可以看到利用 onkeydown 事件的 event.keyCode/event.which 来获取用户的一些键盘操作,从而运行某些运用的例子。如在用户登录时,如果按下了大写锁定键(20),则加以提示大写锁定;在有翻页的时候,如果用户按下左右箭头,触发上下翻页等。

获得 Unicode 编码值之后,如果需要得到实际对应的按键值,可以通过 Srting 对象的 fromCharCode 方法(String.fromCharCode())获得。注意,对于字符获得的始终是大写字符,而对于其他一些功能按键,得到的字符可能不太易阅读。

javascript判断是否按回车键

<input id="chatMsg" name="chatMsg" type="text"
size="90" onkeypress="enterHandler(event);"/>
function enterHandler(event)
{
//获取用户单击键盘的“键值”
var keyCode = event.keyCode ? event.keyCode 
: event.which ? event.which : event.charCode;
//如果是回车键
if (keyCode == 13)
{
sendRequest();
}
}

屏蔽按键组合健

function Key Down(){    
  if ((window.event.altKey)&& 
      ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ← 
       (window.event.keyCode==39))){  //屏蔽 Alt+ 方向键 → 
     alert("不准你使用ALT+方向键前进或后退网页!"); 
     event.returnValue=false; 
     } 
  if ((event.keyCode==8)||            //屏蔽退格删除键 
      (event.keyCode==116)){          //屏蔽 F5 刷新键 
     event.keyCode=0; 
     event.returnValue=false; 
     } 
  if ((event.ctrlKey)&&(event.keyCode==78)){   //屏蔽 Ctrl+n 
     event.returnValue=false; 
     } 
  if ((event.shiftKey)&&(event.keyCode==121)){ //屏蔽 shift+F10 
     event.returnValue=false; 
     } 
  if (event.keyCode==122){ //屏蔽 F11 
     event.returnValue=false; 
     } 
  }

获取键和相应值的js
另附上一段代码,

可以根据按的键盘上的键,显示键盘动作,并显示keyCode值等

<STYLE TYPE="text/css"> 
TD {text-align:center} 
</STYLE> 
<SCRIPT LANGUAGE="JavaScript"> 
function init() { 
    document.onkeydown = showKeyDown 
    document.onkeyup = showKeyUp 
    document.onkeypress = showKeyPress 
}

function showKeyDown(evt) { 
    evt = (evt) ? evt : window.event 
    document.getElementById("pressKeyCode").innerHTML = 0 
    document.getElementById("upKeyCode").innerHTML = 0 
    document.getElementById("pressCharCode").innerHTML = 0 
    document.getElementById("upCharCode").innerHTML = 0 
    restoreModifiers("") 
    restoreModifiers("Down") 
    restoreModifiers("Up") 
    document.getElementById("downKeyCode").innerHTML = evt.keyCode 
    if (evt.charCode) { 
        document.getElementById("downCharCode").innerHTML = evt.charCode 
    } 
    showModifiers("Down", evt) 
} 
function showKeyUp(evt) { 
    evt = (evt) ? evt : window.event 
    document.getElementById("upKeyCode").innerHTML = evt.keyCode 
    if (evt.charCode) { 
        document.getElementById("upCharCode").innerHTML = evt.charCode 
    } 
    showModifiers("Up", evt) 
    return false 
} 
function showKeyPress(evt) { 
    evt = (evt) ? evt : window.event 
    document.getElementById("pressKeyCode").innerHTML = evt.keyCode 
    if (evt.charCode) { 
        document.getElementById("pressCharCode").innerHTML = evt.charCode 
    } 
    showModifiers("", evt) 
    return false 
} 
function showModifiers(ext, evt) { 
    restoreModifiers(ext) 
    if (evt.shiftKey) { 
        document.getElementById("shift" + ext).style.backgroundColor = "#ff0000" 
    } 
    if (evt.ctrlKey) { 
        document.getElementById("ctrl" + ext).style.backgroundColor = "#00ff00" 
    } 
    if (evt.altKey) { 
        document.getElementById("alt" + ext).style.backgroundColor = "#0000ff" 
    } 
} 
function restoreModifiers(ext) { 
    document.getElementById("shift" + ext).style.backgroundColor = "#ffffff" 
    document.getElementById("ctrl" + ext).style.backgroundColor = "#ffffff" 
    document.getElementById("alt" + ext).style.backgroundColor = "#ffffff" 
} 
</SCRIPT> 
</HEAD>

<BODY onLoad="init()"> 
<H1>Keyboard Event Handler Lab</H1> 
<HR> 
<FORM> 
<TABLE BORDER=2 CELLPADDING=2> 
<TR><TH></TH><TH>onKeyDown</TH><TH>onKeyPress</TH><TH>onKeyUp</TH></TR> 
<TR><TH>Key Codes</TH> 
    <TD ID="downKeyCode">0</TD> 
    <TD ID="pressKeyCode">0</TD> 
    <TD ID="upKeyCode">0</TD> 
</TR> 
<TR><TH>Char Codes (IE5/Mac; NN6)</TH> 
    <TD ID="downCharCode">0</TD> 
    <TD ID="pressCharCode">0</TD> 
    <TD ID="upCharCode">0</TD> 
</TR> 
<TR><TH ROWSPAN=3>Modifier Keys</TH> 
    <TD><SPAN ID="shiftDown">Shift</SPAN></TD> 
    <TD><SPAN ID="shift">Shift</SPAN></TD> 
    <TD><SPAN ID="shiftUp">Shift</SPAN></TD> 
</TR> 
<TR> 
    <TD><SPAN ID="ctrlDown">Ctrl</SPAN></TD> 
    <TD><SPAN ID="ctrl">Ctrl</SPAN></TD> 
    <TD><SPAN ID="ctrlUp">Ctrl</SPAN></TD> 
</TR> 
<TR> 
    <TD><SPAN ID="altDown">Alt</SPAN></TD> 
    <TD><SPAN ID="alt">Alt</SPAN></TD> 
    <TD><SPAN ID="altUp">Alt</SPAN></TD> 
</TR> 
</TABLE> 
</FORM>

屏蔽ctrl+u F12等

function keycodes() {
    document.oncontextmenu = function () { return false };
    document.onkeydown = function (e) {
        e = window.event || e;
        var k = e.keyCode;
        if ((e.ctrlKey == true && k == 85) || k == 123) {
            e.keyCode = 0;
            e.returnValue = false;
            e.cancelBubble = true;
            return false;
        }
    }
}
更多精彩内容其他人还在看

js实现图片上传预览原理分析

这篇文章主要为大家详细介绍了js实现图片上传预览的原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Angular限制input框输入金额(是小数的话只保留两位小数点)

最近做项目遇到这样的需求输入框要求输入金额,只能输入数字,可以是小数,必须保留小数点后两位。下面分为两部分代码给大家介绍实现代码,需要的的朋友参考下吧
收藏 0 赞 0 分享

详解vue-cli + webpack 多页面实例配置优化方法

本篇文章主要介绍了详解vue-cli + webpack 多页面实例配置优化方法,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)

本篇文章主要介绍了React-Native解决键盘遮挡问题(Keyboard遮挡问题),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

JavaScript反弹动画效果的实现代码

本文通过实例代码给大家介绍了js反弹动画效果的实现代码,需要的朋友参考下吧
收藏 0 赞 0 分享

解决vue2.x中数据渲染以及vuex缓存的问题

本篇文章主要介绍了vue2.x中请求之前数据显示以及vuex缓存的问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

jsonp跨域请求详解

这篇文章主要为大家详细介绍了jsonp跨域请求的相关资料,激活了所有接口支持浏览器跨域请求的封装,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

解决vue里碰到 $refs 的问题的方法

本篇文章主要介绍了解决vue里碰到 $refs 的问题的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

js自定义弹框插件的封装

这篇文章主要为大家详细介绍了js自定义弹框插件的简单封装,自己封装一个弹框插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

深入理解vue $refs的基本用法

本篇文章主要介绍了深入理解vue $refs的基本用法 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多