2

誰かが私を助けることができますか、どのように変数keyCodeに定義できますか。charcode以下は私のコードです。しかし、Firefox では動作しないようです。私はすでに Google chrome を試しています。つまり、問題なく動作します。

    $(function() {
      $('#txtInput').keydown(function(event) {

      var Key = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
            //number
        if (Key >= 48 && Key <= 57)
            return true;
        //numpad
        else if (Key >= 96 && Key <= 105)
            return true;
        //backspace,tab
        else if (Key >= 8 && Key <= 9)
            return true;
        else return false;
    });
});
4

1 に答える 1

4

すべてのブラウザで問題なく動作event.whichすることを確認するだけで十分だと思います。keyCode

jQueryドキュメントによると:

event.whichプロパティは、event.keyCodeevent.charCodeを正規化します。キーボード key のevent.whichを監視することをお勧めしますinput

もっと

event.ボタンの押下 (mousedown および mouseupevents) も正規化し、左ボタンの場合は1 、中央の場合は 2 、右の場合は 3 を報告します。event.buttonの代わりにevent.whichを使用します。

コード

$('#txtInput').keydown(function(event) {

    var Key = event.which;
    //number
    if (Key >= 48 && Key <= 57) {
        alert('number');
        return true;
    }
    //numpad
    else if (Key >= 96 && Key <= 105) {
        alert('numpad');
        return true;
    }
    //backspace,tab
    else if (Key >= 8 && Key <= 9) {
        alert('backspace, tab');
        return true;
    }
    else return false;
});

作業サンプル

event.whichについてもっと読む

于 2012-06-25T06:34:34.503 に答える