-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.js
99 lines (89 loc) · 4.02 KB
/
main.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// The keys and notes variables store the piano keys
const keys = ['c-key', 'd-key', 'e-key', 'f-key', 'g-key', 'a-key', 'b-key', 'high-c-key', 'c-sharp-key', 'd-sharp-key', 'f-sharp-key', 'g-sharp-key', 'a-sharp-key'];
const notes = [];
keys.forEach(function(key){
notes.push(document.getElementById(key));
})
// Functions that change the color of the keys below
function keyPlay(event) {
event.target.style.backgroundColor = 'red';
}
function keyReturn(event) {
event.target.style.backgroundColor = '';
}
// Function with event handler properties
function eventHandle(note) {
note.onmousedown = function() {
keyPlay(event)
};
note.onmouseup = function() {
keyReturn(event)
};
}
// forEach loop that runs the array elements through the function
notes.forEach(eventHandle);
// These variables store the buttons that progress the user through the lyrics
let nextOne = document.getElementById('first-next-line');
let nextTwo = document.getElementById('second-next-line');
let nextThree = document.getElementById('third-next-line');
let startOver = document.getElementById('fourth-next-line');
// This variable stores the '-END' lyric element
let lastLyric = document.getElementById('column-optional');
// These statements are "hiding" all the progress buttons but the first one
nextTwo.hidden = true;
nextThree.hidden = true;
startOver.hidden= true;
//Anonymous event handler property and function for the first progress button
nextOne.onclick = function() {
nextTwo.hidden = false;
nextOne.hidden = true;
document.getElementById('letter-note-five').innerHTML = 'D';
document.getElementById('letter-note-six').innerHTML = 'C';
};
// Anonymous event handler property and function for the second progress button
nextTwo.onclick = function() {
nextThree.hidden = false;
nextTwo.hidden = true;
document.getElementById('word-five').innerHTML = 'DEAR';
document.getElementById('word-six').innerHTML = 'FRI-';
lastLyric.style.display = 'inline-block';
document.getElementById('letter-note-three').innerHTML = 'G';
document.getElementById('letter-note-four').innerHTML = 'E';
document.getElementById('letter-note-five').innerHTML = 'C';
document.getElementById('letter-note-six').innerHTML = 'B';
};
// Anonymous event handler property and function for the third progress button
nextThree.onclick = function() {
startOver.hidden = false;
nextThree.hidden = true;
document.getElementById('word-one').innerHTML = 'HAP-';
document.getElementById('word-two').innerHTML = 'PY';
document.getElementById('word-three').innerHTML = 'BIRTH';
document.getElementById('word-four').innerHTML = 'DAY';
document.getElementById('word-five').innerHTML = 'TO';
document.getElementById('word-six').innerHTML = 'YOU!';
document.getElementById('letter-note-one').innerHTML = 'F';
document.getElementById('letter-note-two').innerHTML = 'F';
document.getElementById('letter-note-three').innerHTML = 'E';
document.getElementById('letter-note-four').innerHTML = 'C';
document.getElementById('letter-note-five').innerHTML = 'D';
document.getElementById('letter-note-six').innerHTML = 'C';
lastLyric.style.display = 'none';
};
// This is the event handler property and function for the startOver button
startOver.onclick = function() {
nextOne.hidden = false;
startOver.hidden = true;
document.getElementById('word-one').innerHTML = 'HAP-';
document.getElementById('letter-note-one').innerHTML = 'G';
document.getElementById('word-two').innerHTML = 'PY';
document.getElementById('letter-note-two').innerHTML = 'G';
document.getElementById('word-three').innerHTML = 'BIRTH-';
document.getElementById('letter-note-three').innerHTML = 'A';
document.getElementById('word-four').innerHTML = 'DAY';
document.getElementById('letter-note-four').innerHTML = 'G';
document.getElementById('word-five').innerHTML = 'TO';
document.getElementById('letter-note-five').innerHTML = 'C';
document.getElementById('word-six').innerHTML = 'YOU!';
document.getElementById('letter-note-six').innerHTML = 'B';
};