Js监听键盘事件

表单提交的时候大多数用户都习惯用回车键来进行提交,页面接受回车键的处理以下:函数

注意:spa

if(navigator.userAgent.indexOf("MSIE")>0)  {          
 //IE           document.onkeydown=function(){
        if(13 == event.keyCode){
          alert('browser is ie and enter key down');
        }
      } }else{  
 //非IE           window.onkeydown=function(){
        if(13 == event.keyCode){
          alert('browser is not ie and enter key down');
        }

      } }

 

附经常使用功能键 
值 描述 

8 BACKSPACE 键
9 TAB 键
13 ENTER 键
16 SHIFT 键
17 CTRL 键
20 CAPS LOCK 键
27 ESC 键
32 SPACEBAR 键
33 PAGEUP 键
34 PAGEDOWN 键
35 END 键
42 PRINT SCREEN 键
46 DEL 键
144 NUM LOCK 键


判断方法:
  
   在填写表单时,习惯性会按下回车键,这将致使表单提交,很很差,这里介绍一个方法截获它。
  
    其实很简单,只要在想截获的区域增长Onkeydown事件函数,并在执行函数中写下以下语句:
  
    if (window.event.keyCode==13) window.event.keyCode=0
  
    这样就取消回车键了
  
    若是想模拟Tab键,只要写成
  
    if (window.event.keyCode==13) window.event.keyCode=9
  
    就好了,它会跳到另外一个元素上。


键盘事件:
   
  名称 说明 
  onkeypress
   这个事件在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)没法获得识别。
   
  onkeyup
   这个事件在用户放开任何先前按下的键盘键时发生。
   
  onkeydown
   这个事件在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。


   在使用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对主付键盘的数字键敏感。 
相关文章
相关标签/搜索