最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript鍵盤事件常見用法實例分析

 更新時間:2019年01月03日 14:52:16   作者:司馬懿字仲達  
這篇文章主要介紹了JavaScript鍵盤事件常見用法,簡單描述了javascript鍵盤事件的分類、功能,并結(jié)合實例形式給出了javascript響應(yīng)鍵盤事件相關(guān)使用技巧,需要的朋友可以參考下

本文實例講述了JavaScript鍵盤事件常見用法。分享給大家供大家參考,具體如下:

JavaScript 鍵盤事件有以下3種

keydown
鍵盤按鍵按下(如果按著不放,會持續(xù)觸發(fā)該事件),可以捕獲組合鍵。

keypress
鍵盤非功能按鍵按下(在keydown之后觸發(fā),如果按著不放會持續(xù)觸發(fā)該事件),只能捕獲單個鍵。

keyup
鍵盤按鍵彈起,可以捕獲組合鍵。

全局事件對象event

event.ctrlKey
功能鍵”ctrl”鍵是否按下。

event.altKey
功能鍵”alt”鍵是否按下。

event.shiftKey
功能鍵”shift”鍵是否按下。

event.keyCode
鍵盤按鍵鍵碼。

event.charCode
鍵盤非功能按鍵的ASCII值,可以用其區(qū)分大小寫。

String.fromCharCode(event.charCode)
將ASCII值轉(zhuǎn)化為對應(yīng)的字符形式。

注意點

  • KeyDown觸發(fā)后,不一定觸發(fā)KeyUp。比如此時單擊鼠標右鍵。
  • 其中PrScrn 按鍵KeyPress、KeyDown和KeyUp 都不能捕獲。
  • KeyPress主要用來捕獲數(shù)字(包括Shift+數(shù)字的符號)、字母(注意:包括大小寫)、小鍵盤等除了F1-12、SHIFT、Alt、Ctrl、Insert、Home、PgUp、Delete、End、PgDn、ScrollLock、Pause、NumLock、{菜單鍵}、{開始鍵}和方向鍵外的ANSI字符。
  • KeyDown 和 KeyUp 的keyCode區(qū)分小鍵盤和主鍵盤的數(shù)字字符。KeyPress 則不區(qū)分小鍵盤和主鍵盤的數(shù)字字符。

keyCode key
8 BackSpace BackSpace
9 Tab Tab
12 Clear
13 Enter
16 Shift_L
17 Control_L
18 Alt_L
19 Pause
20 Caps_Lock
27 Escape Escape
32 space space
33 Prior
34 Next
35 End
36 Home
37 Left
38 Up
39 Right
40 Down
41 Select
42 Print
43 Execute
45 Insert
46 Delete
47 Help
48 0 equal braceright
49 1 exclam onesuperior
50 2 quotedbl twosuperior
51 3 section threesuperior
52 4 dollar
53 5 percent
54 6 ampersand
55 7 slash braceleft
56 8 parenleft bracketleft
57 9 parenright bracketright
65 a A
66 b B
67 c C
68 d D
69 e E EuroSign
70 f F
71 g G
72 h H
73 i I
74 j J
75 k K
76 l L
77 m M mu
78 n N
79 o O
80 p P
81 q Q at
82 r R
83 s S
84 t T
85 u U
86 v V
87 w W
88 x X
89 y Y
90 z Z
96 KP_0 KP_0
97 KP_1 KP_1
98 KP_2 KP_2
99 KP_3 KP_3
100 KP_4 KP_4
101 KP_5 KP_5
102 KP_6 KP_6
103 KP_7 KP_7
104 KP_8 KP_8
105 KP_9 KP_9
106 KP_Multiply KP_Multiply
107 KP_Add KP_Add
108 KP_Separator KP_Separator
109 KP_Subtract KP_Subtract
110 KP_Decimal KP_Decimal
111 KP_Divide KP_Divide
112 F1
113 F2
114 F3
115 F4
116 F5
117 F6
118 F7
119 F8
120 F9
121 F10
122 F11
123 F12
124 F13
125 F14
126 F15
127 F16
128 F17
129 F18
130 F19
131 F20
132 F21
133 F22
134 F23
135 F24
136 Num_Lock
137 Scroll_Lock
187 acute grave
188 comma semicolon
189 minus underscore
190 period colon
192 numbersign apostrophe
210 plusminus hyphen macron
211
212 copyright registered
213 guillemotleft guillemotright
214 masculine ordfeminine
215 ae AE
216 cent yen
217 questiondown exclamdown
218 onequarter onehalf threequarters
220 less greater bar
221 plus asterisk asciitilde
227 multiply division
228 acircumflex Acircumflex
229 ecircumflex Ecircumflex
230 icircumflex Icircumflex
231 ocircumflex Ocircumflex
232 ucircumflex Ucircumflex
233 ntilde Ntilde
234 yacute Yacute
235 oslash Ooblique
236 aring Aring
237 ccedilla Ccedilla
238 thorn THORN
239 eth ETH
240 diaeresis cedilla currency
241 agrave Agrave atilde Atilde
242 egrave Egrave
243 igrave Igrave
244 ograve Ograve otilde Otilde
245 ugrave Ugrave
246 adiaeresis Adiaeresis
247 ediaeresis Ediaeresis
248 idiaeresis Idiaeresis
249 odiaeresis Odiaeresis
250 udiaeresis Udiaeresis
251 ssharp question backslash
252 asciicircum degree
253 3 sterling
254 Mode_switch

測試范例

<html>
  <body>
    <script type="text/javascript">
      function appendText(str) {
        document.body.innerHTML += (str+"<br/>");
      }
      document.onkeydown = function(){
        //如果長按的話,會持續(xù)觸發(fā)keydown和keypress(如果有該事件的話)
        appendText("onkeydown");
        if(event.ctrlKey) {
          appendText("ctrlKey");
        }
        if(event.altKey) {
          appendText("altKey");
        }
        if(event.shiftKey) {
          appendText("shiftKey");
        }
        //無charCode屬性,只有keypress才有該屬性
        if(event.charCode) {
          appendText(String.fromCharCode(event.charCode));
        }
        if(event.keyCode) {
          appendText(event.keyCode);
        }
        //該語句只對chrome和edge有效,可以屏蔽keypress(只對chrome和edge瀏覽器有效)
        //event.returnValue = false;
      };
      document.onkeypress = function() {
        //keypress無法監(jiān)聽到組合鍵
        appendText("onkeypress");
        if(event.ctrlKey) {
          appendText("ctrlKey");
        }
        if(event.altKey) {
          appendText("altKey");
        }
        if(event.shiftKey) {
          appendText("shiftKey");
        }
        //charCode是字母的Unicode值
        if(event.charCode) {
          appendText(String.fromCharCode(event.charCode));
        }
      }
      document.onkeyup = function() {
        appendText("onkeyup");
      }
    </script>
  </body>
</html>

這里使用在線HTML/CSS/JavaScript代碼運行工具http://tools.jb51.net/code/HtmlJsRun測試上述代碼,運行效果如下圖所示:

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript操作DOM技巧總結(jié)》、《JavaScript頁面元素操作技巧總結(jié)》、《JavaScript事件相關(guān)操作與技巧大全》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)

希望本文所述對大家JavaScript程序設(shè)計有所幫助。

相關(guān)文章

最新評論

宣城市| 石门县| 娄底市| 南开区| 甘孜县| 辽阳市| 萨嘎县| 泸西县| 边坝县| 武山县| 和顺县| 奇台县| 法库县| 桦甸市| 石狮市| 桐庐县| 房产| 巴林左旗| 三都| 六盘水市| 天等县| 平塘县| 庐江县| 农安县| 长宁县| 开鲁县| 屏东市| 油尖旺区| 宜阳县| 富阳市| 西林县| 南召县| 桦川县| 隆德县| 呼玛县| 车险| 合阳县| 德格县| 克拉玛依市| 龙门县| 渭南市|