-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscroll-script.js
More file actions
121 lines (94 loc) · 3.59 KB
/
scroll-script.js
File metadata and controls
121 lines (94 loc) · 3.59 KB
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
const buttonLeft_kr = document.getElementById('slide_left_kr');
const buttonRight_kr = document.getElementById('slide_right_kr');
const poster_kr = document.getElementById('poster_kr');
const buttonLeft_for = document.getElementById('slide_left_for');
const buttonRight_for = document.getElementById('slide_right_for');
const poster_for = document.getElementById('poster_for');
const slide_interval = 300;
//페이지 로드시 버튼 업데이트
window.onload = function() {
const right_margin_kr = poster_kr.scrollWidth - poster_kr.clientWidth;
const right_margin_for = poster_for.scrollWidth - poster_for.clientWidth;
//왼쪽 스크롤 버튼은 필요 없음
buttonLeft_kr.style.visibility = "hidden";
buttonLeft_for.style.visibility = "hidden";
//오른쪽 스크롤은 오른쪽 남은 공간이 없으면 필요없음
if (right_margin_kr === 0) {
buttonRight_kr.style.visibility = "hidden";
}
if (right_margin_for === 0) {
buttonRight_for.style.visibility = "hidden";
}
}
//페이지 크기 변경시 버튼 업데이트
function updateScrollButtonVisibility() {
const right_margin_kr = poster_kr.scrollWidth - (poster_kr.clientWidth + poster_kr.scrollLeft);
const right_margin_for = poster_for.scrollWidth - (poster_for.clientWidth + poster_for.scrollLeft);
if (poster_kr.scrollLeft === 0) {
buttonLeft_kr.style.visibility = "hidden";
} else {
buttonLeft_kr.style.visibility = "visible";
}
if (right_margin_kr === 0) {
buttonRight_kr.style.visibility = "hidden";
} else {
buttonRight_kr.style.visibility = "visible";
}
if (poster_for.scrollLeft === 0) {
buttonLeft_for.style.visibility = "hidden";
} else {
buttonLeft_for.style.visibility = "visible";
}
if (right_margin_for === 0) {
buttonRight_for.style.visibility = "hidden";
} else {
buttonRight_for.style.visibility = "visible";
}
}
window.addEventListener('resize', updateScrollButtonVisibility);
// 한국 컨텐츠 좌측 슬라이드
buttonLeft_kr.onclick = function () {
if (poster_kr.scrollLeft <= slide_interval) {
buttonLeft_kr.style.visibility = "hidden";
}
buttonRight_kr.style.visibility = "visible";
poster_kr.scrollTo({
left: poster_kr.scrollLeft - slide_interval,
behavior: "smooth",
});
};
// 한국 컨텐츠 우측 슬라이드
buttonRight_kr.onclick = function () {
const right_margin_kr = poster_kr.scrollWidth - (poster_kr.clientWidth + poster_kr.scrollLeft);
if (right_margin_kr <= slide_interval) {
buttonRight_kr.style.visibility = "hidden";
}
buttonLeft_kr.style.visibility = "visible";
poster_kr.scrollTo({
left: poster_kr.scrollLeft + slide_interval,
behavior: "smooth",
});
};
// 해외 컨텐츠 좌측 슬라이드
buttonLeft_for.onclick = function () {
if (poster_for.scrollLeft <= slide_interval) {
buttonLeft_for.style.visibility = "hidden";
}
buttonRight_for.style.visibility = "visible";
poster_for.scrollTo({
left: poster_for.scrollLeft - slide_interval,
behavior: "smooth",
});
};
// 해외 컨텐츠 우측 슬라이드
buttonRight_for.onclick = function () {
const right_margin_for = poster_for.scrollWidth - (poster_for.clientWidth + poster_for.scrollLeft);
if (right_margin_for <= slide_interval) {
buttonRight_for.style.visibility = "hidden";
}
buttonLeft_for.style.visibility = "visible";
poster_for.scrollTo({
left: poster_for.scrollLeft + slide_interval,
behavior: "smooth",
});
};