File tree 3 files changed +29
-9
lines changed
3 files changed +29
-9
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 function
65
+ // console.log(key);
66
+ audio . currentTime = 0 ;
67
+ audio . play ( ) ;
68
+ key . classList . add ( 'playing' ) ;
69
+ }
61
70
71
+ function removeTransition ( e ) {
72
+ if ( e . propertyName !== 'transform' ) return ; //skip it if it's not a transition
73
+ // this.classList.remove("playing");
74
+ e . target . classList . remove ( "playing" ) ;
75
+ }
76
+
77
+ const keys = document . querySelectorAll ( '.key' )
78
+ keys . forEach ( key => key . addEventListener ( 'transitionend' , removeTransition ) ) ;
79
+
80
+ window . addEventListener ( 'keydown' , playSound ) ;
62
81
</ script >
63
82
64
83
Original file line number Diff line number Diff line change 1
1
html {
2
2
font-size : 10px ;
3
- background : url ('./background.jpg' ) bottom center;
3
+ /* background: url('./background.jpg') bottom center; */
4
4
background-size : cover;
5
5
}
6
6
7
- body , html {
7
+ body ,
8
+ html {
8
9
margin : 0 ;
9
10
padding : 0 ;
10
11
font-family : sans-serif;
@@ -19,17 +20,17 @@ body,html {
19
20
}
20
21
21
22
.key {
22
- border : .4rem solid black;
23
- border-radius : .5rem ;
23
+ border : 0 .4rem solid black;
24
+ border-radius : 0 .5rem ;
24
25
margin : 1rem ;
25
26
font-size : 1.5rem ;
26
- padding : 1rem .5rem ;
27
- transition : all .07s ease;
27
+ padding : 1rem 0 .5rem ;
28
+ transition : all 0 .07s ease;
28
29
width : 10rem ;
29
30
text-align : center;
30
31
color : white;
31
- background : rgba (0 , 0 , 0 , 0.4 );
32
- text-shadow : 0 0 .5rem black;
32
+ background : rgba (0 , 0 , 0 , 0.4 );
33
+ text-shadow : 0 0 0 .5rem black;
33
34
}
34
35
35
36
.playing {
46
47
.sound {
47
48
font-size : 1.2rem ;
48
49
text-transform : uppercase;
49
- letter-spacing : .1rem ;
50
+ letter-spacing : 0 .1rem ;
50
51
color : # ffc600 ;
51
52
}
You can’t perform that action at this time.
0 commit comments