有思俱乐部学习园地

获得键盘的按键码


keyCode与which兼容

功能:获得键盘的按键码
因为IE用event.keyCode方法获取当前被按下的键盘按键值,所以当浏览器不支持keyCode的时候,给浏览器的全局HTMLElement设置which事件,让页面上所有的元素都有keyCode这个事件
事例:

使用UForm框架前
html:
<body onKeyDown="keyCheck(event);">
</body>
js:
 function keyCheck(evt) {
     evt = (evt) ? evt : ((window.event) ? window.event : ""); //兼容IE和Firefox获得keyBoardEvent对象
     var key = evt.keyCode?evt.keyCode:evt.which; //兼容IE和Firefox获得keyBoardEvent对象的键值
     if (key==13) {
     alert("aaa")
     }
 }
使用UForm框架
html:
<body>
</body>
js:
$("body")[0].onKeyDown=function(){if(window.event.keyCode==13){alert("aaa")}
下面的输入框,在里面输入可显示按键码和所按的键

 
注:点击提交后,在上面输入框输入,显示输入的按键码
$("#inner")[0]是上面输入框的id
onkeypress事件会在键盘按键被按下并释放一个键时发生
window.event.keyCode:键盘的按键码;
String.fromCharCode(window.event.keyCode):输入键盘的字符

$("#inner")[0].onkeypress=function(){alert("按键码: " + window.event.keyCode + " 字符: " + String.fromCharCode(window.event.keyCode))}

返回结果

工作人员

 
作者:廖泽愈
信息录入:廖泽愈