// Let's make the buttons work var once = false; $(document).on( "keydown keyup", function( e ) { $('.tooltip').fadeOut(); //Ooo lets make the screen work too :P if(!once){ $('.display .light').addClass('on'); $('.screen').one().addClass('flash').delay(300).queue(function(next){ $(this).removeClass('flash').delay(300).find('svg').fadeIn(); once = true; next(); }); } var classAction = e.type === "keydown" ? $.fn.addClass : $.fn.removeClass; switch(e.which) { case 37: // left classAction.call( $('.left'), 'button-press'); break; case 38: // up classAction.call( $('.up'), 'button-press'); break; case 39: // right classAction.call( $('.right'), 'button-press'); break; case 40: // down classAction.call( $('.down'), 'button-press'); break; case 65: //a classAction.call( $('.a-button'), 'button-press'); break; case 66: //b classAction.call( $('.b-button'), 'button-press'); break; case 16: //select (shift) classAction.call( $('.select'), 'button-press'); break; case 13: //start (enter) classAction.call( $('.start'), 'button-press'); break; default: return; // exit this handler for other keys } e.preventDefault(); // prevent the default action (scroll / move caret) } );