NULL
슬라이더 코드 리뷰 본문
// 슬라이드 초기값
var slideIndex = 1;
// 시작시 실행되는 showSlides()함수 slideIndex = 1
showSlides(slideIndex);
// 양 옆 화살표 onclick 함수
// Next/previous controls
function plusSlides(n) {
// n값을 불러와 slideIndex의 값에 더한 후 showSlides함수를 실행
showSlides(slideIndex += n);
}
// 버튼 클릭시 실행되는 함수
// Thumbnail image controls
function currentSlide(n) {
// n값을 불러와 slideIndex의 값에 대입한 후 showSlides함수를 실행
showSlides(slideIndex = n);
}
// showSlides 함수 실행 전달받은 값을 n으로 지정
function showSlides(n) {
// 반복문 초기화
var i;
// 각 사진이 들어있는 div.mySlides 불러온다
var slides = document.getElementsByClassName("mySlides");
// 각 이미지에 대한 버튼 클래스를 불러온다
var dots = document.getElementsByClassName("dot");
// n이 1보다 큰 경우 전달받은 n의 값이 길이보다 크면 1로 초기화 즉 다시 첫번째 사진 인덱스로 만든다
if (n > slides.length) {
slideIndex = 1
}
// n이 1보다 작을 경우 div.mySlide 의 길이를 인덱스로 설정
if (n < 1) {
slideIndex = slides.length
}
// 반복문을 시작
for (i = 0; i < slides.length; i++) {
// 모든 사진을 none으로 처리
slides[i].style.display = "none";
}
// 반복문 시작
for (i = 0; i < dots.length; i++) {
// dot 클래스가 갖고있는 모든 active 클래스를 지운다 ("" 로 치환)
dots[i].className = dots[i].className.replace(" active", "");
}
// slides[slideIndex - 1] if문으로 처리받은 slideIndex값에 -1을 해 slides 의 클래스를 block으로 만든다
slides[slideIndex - 1].style.display = "block";
// 그에 맞는 dot 클래스를 가진 span 에 active 클래스를 추가한다
dots[slideIndex - 1].className += " active";
}
'Front-end > Vanilla JS' 카테고리의 다른 글
typeof 데이터 확인하기 (0) | 2021.12.05 |
---|---|
prompt 입력 (0) | 2021.12.05 |
사용자 이름이 null? (0) | 2021.05.17 |
개인화된 환영 메시지 추가하기 (0) | 2021.05.17 |
이미지 변경자 추가하기 (0) | 2021.05.17 |
Comments