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( '你輸入了鍵盤的 “ + ” 鍵');
   }
}

None.gif在使用JavaScript做WEB鍵盤事件偵聽捕獲時,主要採用onkeypress、onkeydown、onkeyup三個事件進行出來。該三個事件的執行順序如下:onkeydown -> onkeypress ->onkeyup。在一般情況下,採用三種鍵盤事件均可對鍵盤輸入進行有效的響應。當在實際使用中,會發現這幾者有些不同的差別。
None.gif
None.gif   onkeypress事件不能對系統功能鍵(例如:後退、刪除等,其中對中文輸入法不能有效響應)進行正常的響應,onkeydown和onkeyup均可以對系統功能鍵進行有效的攔截,但事件截獲的位置不同,可以根據具體的情況選擇不同的鍵盤事件。
None.gif   由於onkeypress不能對系統功能鍵進行捕獲,導致window.event對象的keyCode屬性和onkeydown,onkeyup鍵盤事件中獲取的keyCode屬性不同,主要表現在onkeypress事件的keyCode對字母的大小寫敏感,而onkeydown、onkeyup事件不敏感;onkeypress事件的keyCode無法區分主鍵盤上的數字鍵和付鍵盤數字鍵的,而onkeydown、onkeyup的keyCode對主付鍵盤的數字鍵敏感。
None.gif
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 碼 鍵盤
27 ESC 32 SPACE 33 ! 34 "
35 # 36 $ 37 % 38 &
39 ' 40 ( 41 ) 42 *
43 + 44 ' 45 - 46 .
47 / 48 0 49 1 50 2
51 3 52 4 53 5 54 6
55 7 56 8 57 9 58 :
59 ; 60 < 61 = 62 >
63 ? 64 @ 65 A 66 B
67 C 68 D 69 E 70 F
71 G 72 H 73 I 74 J
75 K 76 L 77 M 78 N
79 O 80 P 81 Q 82 R
83 S 84 T 85 U 86 V
87 W 88 X 89 Y 90 Z
91 [ 92 / 93 ] 94 ^
95 _ 96 ` 97 a 98 b
99 c 100 d 101 e 102 f
103 g 104 h 105 i 106 j
107 k 108 l 109 m 110 n
111 o 112 p 113 q 114 r
115 s 116 t 117 u 118 v
119 w 120 x 121 y 122 z
123 { 124 | 125 } 126 ~


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章