欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Jquery键盘事件实例1

程序员文章站 2022-06-06 21:10:28
...

    //document的键盘事件
            //键盘事件参数
            //e.charCode:最后响应键盘按键的键值
            //e.keyCode: 最后响应键盘按键的键值
            //e.ctrlKey,e.shiftKey,e.altKey:判断组合键时,是否按下

            //输出键盘的ASCII值
            //键值:(a:65   z:90),(0:48   9:57),(tab:9  enter:13,  ctrl:17  shift:16  alt:18  空格:32  )

            $(document).keydown(function(e){
                alert(e.keyCode);
            });


            //键值(a:97  z:122),(0:48  9:57)

            $(document).keypress(function(e){
                alert(e.keyCode);
            });



            //方向键判断,(上:38  下40: 左:37   右:39)

            $(document).keydown(function(e){
                if(e.keyCode ==37){
                    alert("当前是左");
                }
                elseif(e.keyCode ==38){
                    alert("当前是上");
                }
                elseif(e.keyCode ==39){
                    alert("当前是右");
                }
                elseif(e.keyCode ==40){
                    alert("当前是下");
                }
            })

            //组合键判断

            $(document).keydown(function(e){
                //ctrl+enter
                if(e.ctrlKey && e.keyCode ==13){
                    alert("ctrl+enter组合键触发");
                }

                //ctrl+alt
                if(e.ctrlKey && e.altKey){
                    alert("ctrl+alt组合键触发");
                }

                //ctrl+alt+enter
                if(e.ctrlKey && e.altKey && e.keyCode ==13){
                    alert("ctrl+alt+enter组合键触发");
                }

                //ctrl+shift+delete
                if(e.ctrlKey && e.shiftKey && e.keyCode ==46){
                    alert("ctrl+shif+delete组合键触发");
                }
            });


            //获取键盘字符
            //e.charCode:在keydown事件中总为0,在keypress事件中为e.keyCode
            //e.char:在keydown事件和keypress事件中返回相同都是返回字符

$(document).keydown(function(e){
alert(e.charCode);
});
$(document).keypress(function(e){
alert(e.charCode);
});

$(document).keydown(function(e){
alert(e.char);
});

$(document).keypress(function(e){
alert(e.charCode);
});

            //键盘事件的触发顺序
            //使用弹出对话框的方式检测,不靠谱
            //在三个事件都注册的情况先:先触发keydown,在触发keypress,没有触发keyup
            //只有在keydown和keypress没有注册的时候才会触发keyup

$(document).keydown(function(e){
alert("keydown");
});
$(document).keypress(function(e){
alert("keypress");
});
$(document).keyup(function(){
alert("keyup");
});

var str ="";
$("#txtOne").keydown(function(e){
str +="keydown----->";
});
$("#txtOne").keypress(function(e){
str +="keypress----->";
});
$("#txtOne").keyup(function(){
str +="keyup----->";
alert(str);
});

            //键盘事件的完成
            //判断输入的是否是数字,否则自动完成事件不显示内容(适用于非中文输入法)

$("#txtOne").keypress(function(e){
if(e.keyCode >=48&& e.keyCode <=57){

}
else{
alert("输入的不是数字");
e.preventDefault();
}
});

       //判断输入的是否是数字,否则自动完成事件不显示内容(适用于中文输入法和其他)

$("#txtOne").keydown(function(e){
if(e.keyCode >=48&& e.keyCode <=57){

}
else{
alert("输入的不是数字");
e.preventDefault();
}
});