キーにバインドされた 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/