Skip to content

Commit 7a715ee

Browse files
committed
Completed lessons 11 and 12
cornify.js for the win
1 parent 90bd404 commit 7a715ee

File tree

2 files changed

+63
-0
lines changed

2 files changed

+63
-0
lines changed

11 - Custom Video Player/scripts.js

100644100755
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
// Get our elements on the page
2+
const player = document.querySelector('.player');
3+
const video = player.querySelector('.viewer');
4+
const progress = player.querySelector('.progress');
5+
const progressBar = player.querySelector('.progress__filled');
6+
const toggle = player.querySelector('.toggle');
7+
const skipButtons = player.querySelectorAll('[data-skip]');
8+
const ranges = player.querySelectorAll('.player__slider');
9+
// Build our functions
10+
function togglePlay() {
11+
// if (video.paused) {
12+
// video.play();
13+
// } else {
14+
// video.pause();
15+
// }
16+
const method = video.paused ? 'play' : 'pause';
17+
video[method]();
18+
}
19+
function updateButton() {
20+
const icon = this.paused ? '►' : '❚ ❚';
21+
toggle.textContent = icon;
22+
}
23+
function skip() {
24+
video.currentTime += parseFloat(this.dataset.skip);
25+
}
26+
function handleRangeUpdate() {
27+
video[this.name] = this.value;
28+
}
29+
function handleProgress() {
30+
const percent = (video.currentTime / video.duration) * 100;
31+
progressBar.style.flexBasis = `${percent}%`;
32+
}
33+
function scrub(e) {
34+
const scrubTime = (e.offsetX / progress.offsetWidth) * video.duration;
35+
video.currentTime = scrubTime;
36+
console.log(e);
37+
}
38+
// Hook up the event listeners
39+
video.addEventListener('click', togglePlay);
40+
video.addEventListener('play', updateButton);
41+
video.addEventListener('pause', updateButton);
42+
video.addEventListener('timeupdate', handleProgress);
43+
44+
toggle.addEventListener('click', togglePlay);
45+
skipButtons.forEach(button => button.addEventListener('click', skip));
46+
ranges.forEach(range => range.addEventListener('change', handleRangeUpdate));
47+
48+
let mousedown = false;
49+
progress.addEventListener('click', scrub);
50+
progress.addEventListener('mousemove', (e) => mousedown && scrub(e));
51+
progress.addEventListener('mousedown', () => mousedown = true);
52+
progress.addEventListener('mouseup', () => mousedown = false);

12 - Key Sequence Detection/index-START.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,17 @@
77
</head>
88
<body>
99
<script>
10+
const pressed = [];
11+
const secretCode = 'wesbos';
12+
window.addEventListener('keyup', (e) => {
13+
console.log(e.key);
14+
pressed.push(e.key);
15+
pressed.splice(-secretCode.length - 1, pressed.length - secretCode.length);
16+
if (pressed.join('').includes(secretCode)) {
17+
console.log("Ding ding! You did it!");
18+
cornify_add();
19+
}
20+
});
1021
</script>
1122
</body>
1223
</html>

0 commit comments

Comments
 (0)