同时运行Keyup和Keydown

时间:2020-10-03 03:03:41

标签: javascript jquery

当我按split();键时,我正在尝试运行freeze();freeze2();x。 当我第一次按下X键时,split();freeze();起作用。但是,当我再试一次时,只有freeze();有效。有没有一种方法可以用一个键同时使用所有三个功能?

您需要查看我的脚本才能了解:

(function() {
        var speed = 25;

        function split() {
            $("body").trigger($.Event("keydown", {
                keyCode: 32
            }));
        }

        function split2() {
            $("body").trigger($.Event("keyup", {
                keyCode: 32
            }));
        }

        function freeze() {
            $("body").trigger($.Event("keyup", {
                keyCode: 70
            }));
        }

        function freeze2() {
            $("body").trigger($.Event("keydown", {
                keyCode: 70
            }));
        }
        var addEvent = document.addEventListener ? function(target, type, action) {
            if(target) {
                target.addEventListener(type, action, false);
            }
        } : function(target, type, action) {
            if(target) {
                target.attachEvent('on' + type, action, false);
            }
        }
        addEvent(document, 'keydown', function(e) {
            e = e || window.event;
            var key = e.which || e.keyCode;
            if(key === 88) {
                split();
                setTimeout(speed);
                freeze();
                setTimeout(speed * 2);
                freeze2();
            }
        });

0 个答案:

没有答案
相关问题