jQuery的Event對象(實例)。
阿新 • • 發佈:2017-09-13
方向鍵 以及 var tdi esc code space 屬於 http
which
屬性用於返回觸發當前事件時按下的鍵盤按鍵或鼠標按鈕。
對於鍵盤和鼠標事件,該屬性用於確定你按下的是哪一個鍵盤按鍵或鼠標按鈕。
which
屬性對DOM原生的event.keyCode
和event.charCode
進行了標準化。
適用的事件類型主要有鍵盤事件:keypress、keydown、keyup,以及鼠標事件:mouseup、mousedown。
該屬性屬於jQuery的Event
對象(實例)。
jQuery 1.1.3 新增該屬性。
eventObject.which
返回值
which
屬性的返回值是Number類型,返回觸發當前事件時按下的鍵盤按鍵或鼠標按鈕。
在mousedown、mouseup事件中,event.which
屬性返回的是對應鼠標按鈕的映射代碼值(相當於event.button
)。以下是主要的鼠標按鈕映射代碼對應表。
event.which屬性值 | 對應的鼠標按鈕 |
---|---|
1 | 鼠標左鍵 |
2 | 鼠標中鍵(滾輪鍵) |
3 | 鼠標右鍵 |
在keypress事件中,event.which
屬性返回的是輸入的字符的Unicode值(相當於event.charCode
)。以下是常用的字符Unicode代碼對應表。更多字符的Unicode代碼,請參見完整的ASCII編碼表(Unicode兼容ASCII)。
which屬性值(或範圍) | 對應的輸入字符 |
---|---|
48 - 57 | 對應字符 0 - 9 |
65 - 90 | 對應字符 A - Z |
97 - 122 | 對應字符 a - z |
在keydown、keyup事件中,event.which
屬性返回的是對應按鍵的映射代碼值(相當於event.keyCode
)。以下是常用的鍵盤按鍵映射代碼的對應表:
which屬性值(或範圍) | 對應的鍵盤按鍵 |
---|---|
8 | Backspace鍵 |
9 | Tab鍵 |
13 | Enter鍵 |
16 | Shift鍵 |
17 | Ctrl鍵 |
20 | Alt鍵 |
20 | Caps Lock鍵(大小寫鎖定) |
27 | Esc鍵 |
33 - 36 | 對應按鍵 PageUp、PageDown、End、Home |
37 - 40 | 對應按鍵 左、上、右、下(方向鍵) |
45 - 46 | 對應按鍵 Insert、Delete |
48 - 57 | 對應按鍵 0 - 9(非小鍵盤) |
65 - 90 | 對應按鍵 A - Z |
91 | Windows鍵 |
96 - 105 | 對應按鍵 0 - 9(小鍵盤) |
106、107、109、110、111 | 對應按鍵*、+、-、.、/(小鍵盤) |
112 - 123 | 對應按鍵 F1 - F12 |
<div id="msg"></div>
與event.which
屬性相關的jQuery示例代碼如下(其中表單驗證部分的代碼僅作簡單的非空驗證):
// 為當前文檔綁定keydown和mousedown兩種事件 // 檢測鼠標按下了那些鍵 // 檢測鍵盤按下了那些字母按鍵 $(document).bind("keydown mousedown", function(event){ var msg = ‘‘; if( event.type == "mousedown" ){ // 鼠標按下事件 var map = {"1": "左", "2":"中", "3":"右"}; msg = ‘你按下了鼠標[‘ + map[event.which] + ‘]鍵‘; }else{ // 鍵盤按下事件 if(event.which >= 65 && event.which <= 90){ msg = ‘你按下了鍵盤[‘ + String.fromCharCode(event.which) + ‘]鍵‘; } } if(msg){ $("#msg").prepend( msg + ‘<br>‘); } });
$(function(){
$("body").keydown(function(event){
if(event.which == 13){
$("#frm").submit();
}
})
})
jQuery的Event對象(實例)。