File tree Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Original file line number Diff line number Diff line change 58
58
< audio data-key ="76 " src ="sounds/tink.wav "> </ audio >
59
59
60
60
< script >
61
+ function playSound ( e ) {
62
+ const audio = document . querySelector ( `audio[data-key="${ e . keyCode } "]` ) ;
63
+ const key = document . querySelector ( `.key[data-key="${ e . keyCode } "]` ) ;
64
+ if ( ! audio ) return ; // stop the function from running all together
65
+ audio . currentTime = 0 ; // restarts the sound
66
+ audio . play ( ) ;
67
+ key . classList . add ( 'playing' ) ;
68
+ }
61
69
62
- </ script >
70
+ function removeTransition ( e ) {
71
+ if ( e . propertyName !== 'transform' ) return ; // skip it if its not a transform;
72
+ this . classList . remove ( 'playing' ) ;
73
+ }
63
74
75
+ const keys = document . querySelectorAll ( '.key' ) ;
76
+ keys . forEach ( key => key . addEventListener ( 'transitionend' , removeTransition ) ) ;
77
+ window . addEventListener ( 'keydown' , playSound ) ;
78
+ </ script >
64
79
65
80
</ body >
66
81
</ html >
You can’t perform that action at this time.
0 commit comments