1. 程式人生 > >jQuery的Event對象(實例)。

jQuery的Event對象(實例)。

方向鍵 以及 var tdi esc code space 屬於 http

which屬性用於返回觸發當前事件時按下的鍵盤按鍵或鼠標按鈕

對於鍵盤和鼠標事件,該屬性用於確定你按下的是哪一個鍵盤按鍵或鼠標按鈕。

which屬性對DOM原生的event.keyCodeevent.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對象(實例)。