Skip to content

Commit 30a8f81

Browse files
committed
finished JS Day wesbos#28
1 parent d2e0ab3 commit 30a8f81

File tree

2 files changed

+51
-0
lines changed

2 files changed

+51
-0
lines changed

27 - Click and Drag/index-START.html

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,37 @@
3535
</div>
3636

3737
<script>
38+
39+
const slider = document.querySelector('.items')
40+
41+
let isDown = false;
42+
let startX;
43+
let scrollLeft;
44+
45+
slider.addEventListener('mousedown', (e) => {
46+
isDown = true;
47+
startX = e.pageX;
48+
})
49+
50+
slider.addEventListener('mouseup', () => {
51+
isDown = false;
52+
scrollLeft = slider.scrollLeft
53+
})
54+
55+
slider.addEventListener('mouseleave', () => {
56+
isDown = false;
57+
scrollLeft = slider.scrollLeft
58+
})
59+
60+
slider.addEventListener('mousemove', (e) => {
61+
if(!isDown) return
62+
const distance = startX - e.pageX;
63+
64+
65+
slider.scrollLeft = (distance * 3) + scrollLeft
66+
})
67+
68+
3869
</script>
3970

4071
</body>

28 - Video Speed Controller/index-START.html

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,26 @@
1515
</div>
1616

1717
<script>
18+
19+
const speed = document.querySelector('.speed');
20+
const speedBar = document.querySelector('.speed-bar');
21+
const video = document.querySelector('.flex');
22+
23+
24+
25+
speed.addEventListener('mousemove', function(e){
26+
const y = e.pageY - this.offsetTop;
27+
const [min, max] = [0.4,4]
28+
const percent = y /this.offsetHeight;
29+
const height = Math.round((y /this.offsetHeight) * 100) + '%';
30+
const playBackRate = percent * (max - min) + min;
31+
speedBar.style.height = height;
32+
speedBar.textContent = playBackRate.toFixed(2)
33+
video.playbackRate = playBackRate;
34+
});
35+
36+
37+
1838
</script>
1939
</body>
2040
</html>

0 commit comments

Comments
 (0)