通过jQuery获得按键,模拟按键操作

转载于: http://www.365mini.com/page/jquery-event-which.htm
https://zhidao.baidu.com/question/1111022928770672659.html?qbl=relate_question_1&word=jQuery%CF%D4%CA%BE%B0%B4%CF%C2%B5%C4%BC%FC%CE%BB

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <div id="msg"></div>
</body>
</html>
<script type="text/javascript" src="../../jq/js/jquery-1.11.3.js"></script>
<script type="text/javascript">
    $(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){
            event.preventDefault();
            msg = '你按下了键盘[' + String.fromCharCode(event.which) + ']键';
        }
        if(event.which==83&&event.ctrlKey){
            event.preventDefault();
            msg = "按下了ctrl+S";
        }
        if(event.which == 13 ){
            event.preventDefault();
             msg = "按下了enter";
        }
        if(event.which >=37 && event.which <=40){
            console.log(event.which);
            var arrMap = ["左","上","右","下"];
             msg = '你按下键盘[' + arrMap[event.which-37] + ']键';
        }
        if(event.which >=48 && event.which<=57){
            console.log(event.which);

            msg ="你按下了数字(非小键盘)"+(event.which - 48);
        }
        if(event.which >=96 && event.which<=105){
            console.log(event.which);

            msg ="你按下了数字(小键盘)"+(event.which - 96);
        }
        if(event.which == 91){
            console.log(event.which);

            msg ="你按下了win";
        }
    }
    if(msg){
        $("#msg").prepend( msg + '<br>');
    }
});
</script>

模拟键盘操作

    // 单击按钮触发mousedown即按键事件,并且设定为左键和ctrl
        $("button").click(function(){
            var e = jQuery.Event("mousedown");
            e.which=1,e.ctrlKey=true;
            $(window).trigger(e);
        });
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值