內容
.on( "keydown" [, eventData ], handler )傳回:jQuery
說明:將事件處理常式繫結到「keydown」事件。
此頁面說明 keydown
事件。有關已棄用的 .keydown()
方法,請參閱 .keydown()
。
當使用者按下鍵盤上的按鍵時,keydown
事件會傳送至元素。如果按鍵持續按壓,則每次作業系統重複按鍵時,都會傳送事件。它可以附加至任何元素,但事件只會傳送至具有焦點的元素。可對焦元素會因瀏覽器而異,但表單元素總是能取得焦點,因此是此事件類型的合理候選者。
例如,考慮 HTML
1
2
3
4
5
6
|
|
事件處理常式可以繫結至輸入欄位
1
2
3
|
|
現在當插入點在欄位內時,按下按鍵會顯示警示
已呼叫 `keydown` 處理常式。
若要手動觸發事件,請使用 .trigger( "keydown" )
1
2
3
|
|
此程式碼執行後,按一下 觸發處理常式 也會發出警示訊息。
如果需要擷取任何地方的按鍵 (例如,在頁面上實作全域快速鍵),將此行為附加至 document
物件會很有用。由於事件冒泡,所有按鍵都會沿著 DOM 往上升至 document
物件,除非明確停止。
若要判斷按了哪個按鍵,請檢查傳遞至處理常式函式的 事件物件。雖然瀏覽器使用不同的屬性來儲存此資訊,但 jQuery 標準化了 .which
屬性,因此您可以可靠地使用它來擷取按鍵代碼。此代碼對應鍵盤上的按鍵,包括箭頭等特殊按鍵的代碼。若要擷取實際文字輸入,.keypress()
可能會是更好的選擇。
範例
當在輸入中按下按鍵時,顯示 keydown 處理常式的事件物件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
|
示範
.trigger( "keydown" )傳回: jQuery
描述: 觸發元素的「keydown」事件。
-
版本新增: 1.0.trigger( "keydown" )
-
"keydown"類型:字串字串
"keydown"
。
-
參閱 .on( "keydown", ... )
的說明。