Skip to content

Commit dc0ecb1

Browse files
committed
drunm kit learned data-keys
1 parent 61b13da commit dc0ecb1

File tree

4 files changed

+26
-3
lines changed

4 files changed

+26
-3
lines changed

01 - JavaScript Drum Kit/app.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
2+
3+
4+
5+
function playSound(e){
6+
const audio = document.querySelector(`audio[data-key="${e.keyCode}"]`);
7+
const key = document.querySelector(`.key[data-key="${e.keyCode}"]`);
8+
if(!audio)return;//stop function from running all together
9+
audio.currentTime = 0;// rewind to start
10+
audio.play();
11+
key.classList.add('playing');
12+
}
13+
function removeTransition(e){
14+
if(e.propertyName !== 'transform')
15+
return;//skip if its not a transform
16+
this.classList.remove('playing')
17+
}
18+
19+
const keys = document.querySelectorAll('.key');
20+
keys.forEach(key => key.addEventListener('transitionend', removeTransition));
21+
window.addEventListener('keydown', playSound);

01 - JavaScript Drum Kit/index-START.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@
5757
<audio data-key="75" src="sounds/tom.wav"></audio>
5858
<audio data-key="76" src="sounds/tink.wav"></audio>
5959

60-
<script>
60+
61+
<script type="text/javascript" src="app.js">
6162

6263
</script>
6364

01 - JavaScript Drum Kit/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@
7777
keys.forEach(key => key.addEventListener('transitionend', removeTransition));
7878
window.addEventListener('keydown', playSound);
7979

80+
8081
</script>
8182

8283
</body>

01 - JavaScript Drum Kit/style.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ body,html {
2323
margin:1rem;
2424
font-size: 1.5rem;
2525
padding:1rem .5rem;
26-
transition:all .07s;
26+
transition:all 0.07s;
2727
width:100px;
2828
text-align: center;
2929
color:white;
@@ -32,7 +32,7 @@ body,html {
3232
}
3333

3434
.playing {
35-
transform:scale(1.1);
35+
transform:scale(2.1);
3636
border-color:#ffc600;
3737
box-shadow: 0 0 10px #ffc600;
3838
}

0 commit comments

Comments
 (0)