File tree 1 file changed +37
-4
lines changed
1 file changed +37
-4
lines changed Original file line number Diff line number Diff line change 1
1
<!DOCTYPE html>
2
2
< html lang ="en ">
3
+
3
4
< head >
4
5
< meta charset ="UTF-8 ">
5
6
< title > Click and Drag</ title >
6
7
< link rel ="stylesheet " href ="style.css ">
7
8
</ head >
9
+
8
10
< body >
9
11
< div class ="items ">
10
12
< div class ="item item1 "> 01</ div >
34
36
< div class ="item item25 "> 25</ div >
35
37
</ div >
36
38
37
- < script >
38
- </ script >
39
+ < script >
40
+ const slider = document . querySelector ( '.items' ) ;
41
+ let isDown = false ;
42
+ let startX ;
43
+ let scrollLeft ;
44
+
45
+ slider . addEventListener ( 'mousedown' , ( e ) => {
46
+ isDown = true ;
47
+ slider . classList . add ( 'active' ) ;
48
+ startX = e . pageX - slider . offsetLeft ;
49
+ scrollLeft = slider . scrollLeft ;
50
+ } ) ;
51
+
52
+ slider . addEventListener ( 'mouseleave' , ( ) => {
53
+ isDown = false ;
54
+ slider . classList . remove ( 'active' ) ;
55
+ } ) ;
56
+
57
+ slider . addEventListener ( 'mouseup' , ( ) => {
58
+ isDown = false ;
59
+ slider . classList . remove ( 'active' ) ;
60
+ } ) ;
61
+
62
+ slider . addEventListener ( 'mousemove' , ( e ) => {
63
+ if ( ! isDown ) return ;
64
+ e . preventDefault ( ) ;
65
+ const x = e . pageX - slider . offsetLeft ;
66
+ console . log ( { x, startX} ) ;
67
+ const walk = ( x - startX ) * 6.8 ;
68
+ slider . scrollLeft = scrollLeft - walk ;
69
+ } ) ;
70
+ </ script >
71
+
72
+ </ body >
39
73
40
- </ body >
41
- </ html >
74
+ </ html >
You can’t perform that action at this time.
0 commit comments