File tree Expand file tree Collapse file tree 1 file changed +47
-0
lines changed Expand file tree Collapse file tree 1 file changed +47
-0
lines changed Original file line number Diff line number Diff line change 5858 < audio data-key ="76 " src ="sounds/tink.wav "> </ audio >
5959
6060< script >
61+ ( function ( document ) {
62+ var Key = function ( ) {
63+ }
6164
65+ Key . prototype . start = function ( ) {
66+ this . key . classList . add ( 'playing' )
67+ this . audio . play ( )
68+ }
69+
70+ Key . prototype . stop = function ( ) {
71+ this . key . classList . remove ( 'playing' )
72+ /*if(!this.audio.ended) {
73+ this.audio.pause()
74+ }*/
75+ } ;
76+
77+ var keyMap = {
78+
79+ }
80+
81+ var keys = document . getElementsByClassName ( 'key' ) ;
82+
83+ for ( var i = 0 ; i < keys . length ; i ++ ) {
84+ var newkey = new Key ( )
85+ newkey . key = keys [ i ]
86+ keyMap [ keys [ i ] . getAttribute ( 'data-key' ) ] = newkey
87+ }
88+
89+ var audios = document . getElementsByTagName ( 'audio' ) ;
90+ for ( var i = 0 ; i < audios . length ; i ++ ) {
91+ keyMap [ audios [ i ] . getAttribute ( 'data-key' ) ] . audio = audios [ i ] ;
92+ }
93+
94+ var activeKey ;
95+ document . onkeyup = function ( e ) {
96+ if ( keyMap [ e . keyCode ] ) {
97+ if ( activeKey ) {
98+ activeKey . stop ( )
99+ }
100+
101+ activeKey = keyMap [ e . keyCode ]
102+ activeKey . start ( )
103+
104+ }
105+ console . log ( keyMap [ e . keyCode ] ) ;
106+
107+ }
108+ } ) ( document ) ;
62109</ script >
63110
64111
You can’t perform that action at this time.
0 commit comments