js判断键盘按键

判断方法:

 

表 3. DHTML 键盘事件
名称说明

onkeypress

这个事件在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)无法得到识别。

onkeyup

这个事件在用户放开任何先前按下的键盘键时发生。

onkeydown

这个事件在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。

 

示例:

function document.onkeydown()
{
   if ( event.keyCode=='39' ) //->右箭头
   {
    window.open("http://www.163.com");
   }
}

 

function document.onkeypress()
{
   if ( event.keyCode=='43' )
   {
    alert( '你输入了键盘的 “ + ” 键');
   }
}

 

在使用JavaScript做WEB键盘事件侦听捕获时,主要采用onkeypress、onkeydown、onkeyup三个事件进行出来。该三个事件的执行顺序如下:onkeydown  ->  onkeypress  -> onkeyup。在一般情况下,采用三种键盘事件均可对键盘输入进行有效的响应。当在实际使用中,会发现这几者有些不同的差别。

   onkeypress事件不能对系统功能键(例如:后退、删除等,其中对中文输入法不能有效响应)进行正常的响应,onkeydown和onkeyup均可以对系统功能键进行有效的拦截,但事件截获的位置不同,可以根据具体的情况选择不同的键盘事件。
   由于onkeypress不能对系统功能键进行捕获,导致window.event对象的keyCode属性和onkeydown,onkeyup键盘事件中获取的keyCode属性不同,主要表现在onkeypress事件的keyCode对字母的大小写敏感,而onkeydown、onkeyup事件不敏感;onkeypress事件的keyCode无法区分主键盘上的数字键和付键盘数字键的,而onkeydown、onkeyup的keyCode对主付键盘的数字键敏感。
http://liu2liu2.spaces.live.com/blog/cns!54B12917375EF5A0!270.entry

 

屏蔽组合键ctrl+N

<script language=javascript
function KeyDown(){    
   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; 
      } 
   }

 

ASCII码

 
ASCII码键盘ASCII 码键盘ASCII 码键盘ASCII 码键盘
27ESC32SPACE33!34"
35#36$37%38&
39'40(41)42*
43+44'45-46.
47/480491502
513524535546
55756857958:
59;60<61=62>
63?64@65A66B
67C68D69E70F
71G72H73I74J
75K76L77M78N
79O80P81Q82R
83S84T85U86V
87W88X89Y90Z
91[92\93]94^
95_96`97a98b
99c100d101e102f
103g104h105i106j
107k108l109m110n
111o112p113q114r
115s116t117u118v
119w120x121y122z
123{124|125}126~

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值