├── README.md ├── app.js ├── index.html └── style.css /README.md: -------------------------------------------------------------------------------- 1 | # class_image_slider 2 | 3 | [Live Demo](https://coderkhalide.github.io/class_image_slider) 4 | -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | const slides = document.querySelectorAll('.slide') 2 | const previous = document.querySelector('.previous') 3 | const next = document.querySelector('.next') 4 | let currentSlide = 0 5 | 6 | const changeSlider = () => { 7 | slides.forEach((slide, index) => { 8 | if(slide.classList.contains('active')) currentSlide = index 9 | }) 10 | slides[currentSlide].classList.remove('active') 11 | if(currentSlide === (slides.length - 1)) slides[0].classList.add('active') 12 | else slides[currentSlide + 1].classList.add('active') 13 | } 14 | 15 | let interval = setInterval(changeSlider, 5000) 16 | 17 | const nextSlider = () => { 18 | clearInterval(interval) 19 | slides[currentSlide].classList.remove('active') 20 | 21 | if(currentSlide === (slides.length - 1)) { 22 | slides[0].classList.add('active') 23 | currentSlide = 0 24 | } 25 | else { 26 | slides[currentSlide + 1].classList.add('active') 27 | currentSlide = currentSlide + 1 28 | } 29 | interval = setInterval(changeSlider, 5000) 30 | } 31 | 32 | const previousSlider = () => { 33 | clearInterval(interval) 34 | slides[currentSlide].classList.remove('active') 35 | 36 | if(currentSlide === 0) { 37 | slides[slides.length - 1].classList.add('active') 38 | currentSlide = slides.length - 1 39 | } 40 | else { 41 | slides[currentSlide - 1].classList.add('active') 42 | currentSlide = currentSlide - 1 43 | } 44 | interval = setInterval(changeSlider, 5000) 45 | } 46 | 47 | previous.addEventListener('click', previousSlider) 48 | next.addEventListener('click', nextSlider) -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 |