您的位置:首页 > Web前端 > JavaScript

(转载)javascript监听键盘事件

2007-10-16 14:36 429 查看
function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}



javascript监听键盘事件

1. 监听键盘事件源和键盘动作来实现不同的操作

<script language="JavaScript" for="document" event="onkeydown">
<!--
//Form中的控件的名字都为数字如:1,2,3 ...
//这样在控件比较多的情况下可以比较容易对事件来源进行分类
var id=parseInt(event.srcElement.name);
var keyid = event.keyCode;
if(id>6 && id<76 )...{ //利用Form中控件的名字判断
if(event.keyCode>=48 && event.keyCode <= 53 ) ...{//键盘横行数字键0-5的键值
event.srcElement.value = event.keyCode-48;
event.keyCode=9; //Tab键;转至下一项
}else if(event.keyCode>=0x60 && event.keyCode <= 0x65 )...{//键盘数字部分数字键0-5的键值
event.srcElement.value = event.keyCode-0x60;
event.keyCode=9;
playSound();
}

if(event.keyCode ==13)...{
event.keyCode =9;
document.form1.elements[id-1].focus();
}
} else ...{
if(event.keyCode ==13 && event.srcElement.type!='submit' )...{
event.keyCode = 9;

}
}
-->
</script>

2. 利用回车代替Tab键

<script language="javascript" for="document" event="onkeydown">

<!--

if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='textarea' && event.srcElement.type!='')

event.keyCode=9;

-->

</script>

附:键盘各键对应的键值
值 描述/r
0x1 鼠标左键/r
0x2 鼠标右键/r
0x3 CANCEL 键/r
0x4 鼠标中键/r
0x8 BACKSPACE 键/r
0x9 TAB 键/r
0xC CLEAR 键/r
0xD ENTER 键/r
0x10 SHIFT 键/r
0x11 CTRL 键/r
0x12 MENU 键/r
0x13 PAUSE 键/r
0x14 CAPS LOCK 键/r
0x1B ESC 键/r
0x20 SPACEBAR 键/r
0x21 PAGE UP 键/r
0x22 PAGE DOWN 键/r
0x23 END 键/r
0x24 HOME 键/r
0x25 LEFT ARROW 键/r
0x26 UP ARROW 键/r
0x27 RIGHT ARROW 键/r
0x28 DOWN ARROW 键/r
0x29 SELECT 键/r
0x2A PRINT SCREEN 键/r
0x2B EXECUTE 键/r
0x2C SNAPSHOT 键/r
0x2D INSERT 键/r
0x2E DELETE 键/r
0x2F HELP 键/r
0x90 NUM LOCK 键/r
A 至 Z 键与 A – Z 字母的 ASCII 码相同:
值 描述/r
65 A 键/r
66 B 键/r
67 C 键/r
68 D 键/r
69 E 键/r
70 F 键/r
71 G 键/r
72 H 键/r
73 I 键/r
74 J 键/r
75 K 键/r
76 L 键/r
77 M 键/r
78 N 键/r
79 O 键/r
80 P 键/r
81 Q 键/r
82 R 键/r
83 S 键/r
84 T 键/r
85 U 键/r
86 V 键/r
87 W 键/r
88 X 键/r
89 Y 键/r
90 Z 键/r
0 至 9 键与数字 0 – 9 的 ASCII 码相同:
值 描述/r
48 0 键/r
49 1 键/r
50 2 键/r
51 3 键/r
52 4 键/r
53 5 键/r
54 6 键/r
55 7 键/r
56 8 键/r
57 9 键/r
下列常数代表数字键盘上的键:
值 描述/r
0x60 0 键/r
0x61 1 键/r
0x62 2 键/r
0x63 3 键/r
0x64 4 键/r
0x65 5 键/r
0x66 6 键/r
0x67 7 键/r
0x68 8 键/r
0x69 9 键/r
0x6A MULTIPLICATION SIGN (*) 键/r
0x6B PLUS SIGN (+) 键/r
0x6C ENTER 键/r
0x6D MINUS SIGN (–) 键/r
0x6E DECIMAL POINT (.) 键/r
0x6F DIVISION SIGN (/) 键/r
下列常数代表功能键:
值 描述/r
0x70 F1 键/r
0x71 F2 键/r
0x72 F3 键/r
0x73 F4 键/r
0x74 F5 键/r
0x75 F6 键/r
0x76 F7 键/r
0x77 F8 键/r
0x78 F9 键/r
0x79 F10 键/r
0x7A F11 键/r
0x7B F12 键/r
0x7C F13 键/r
0x7D F14 键/r
0x7E F15 键/r
0x7F F16 键/r
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: