0

キーにバインドされた ID 変更がありますが、何らかの理由で一貫して実行に失敗します。キーバインド内で他の変更が完全に機能しているにもかかわらず、ID を変更するために使用されるコードは、プログラム内の他の場所の機能コードと同じです。

関連コード:

var KeyBind = function() {
    if (document.addEventListener) {
        document.addEventListener("keydown", keyDownHandler, false);
        document.addEventListener("keydown", keyUpHandler, false);
    }
    else if (document.attachEvent) {
        document.attachEvent("onkeydown", function() {
            keyDownHandler(window.event);
        });
        document.attachEvent("onkeydown", function() {
            keyUpHandler(window.event);
        });
    }

    function keyDownHandler(e) {
        var key = e.which || e.keyCode
        if (key == "50"){
            document.getElementById('Player').id='PlayerLeft';
            document.getElementById('PlayerLeft').style.webkitAnimationPlayState="running";
            setTimeout(function(){
                document.getElementById('PlayerLeft').style.webkitAnimationPlayState="paused";
            }, 200);
        }

        if (key == "49"){
            document.getElementById('PlayerLeft').style.webkitAnimationPlayState="running";
            setTimeout(function(){
                document.getElementById('PlayerLeft').style.webkitAnimationPlayState="paused";
            }, 800);                
        };

        if (key == "57"){
            //setTimeout(function(){
            document.getElementById('PlayerLeft2').style.webkitAnimationPlayState="running";
            //}, 800);

            setTimeout(function(){
                document.getElementById('PlayerLeft2').style.webkitAnimationPlayState="paused";
            }, /*1*/350);

            /*setTimeout(function(){
                document.getElementById('PlayerLeft2').style.webkitAnimationPlayState="running";
            }, 1150);

            setTimeout(function(){
                document.getElementById('PlayerLeft2').id='Player';                 
            }, 1500);*/         
        };

        if (key == "57" && document.getElementById('PlayerLeft2').style.left>="681px"){
            document.getElementById('PlayerLeft2').style.webkitAnimationPlayState="running";
            var idChanger = function(){
                document.getElementById('PlayerLeft2').id='Player';
            };
            setTimeout(//function(){                    
                idChanger
            /*}*/, 100);
        };                                                                              
    };
}();

Jsfiddle: http://jsfiddle.net/6JUaB/

4

0 に答える 0