Pure Javascript Carousel Script – iamrohit.in

In this post i am going to share simple script to create Carousel/slider card on navigation dots click. It’ll create dots as per no. of pages and you can choose any page to move slide and landed to that particular slider slides. Useful to display news related material. or quick product carousel to navigate multiple product card in single frame.

Pure Javascript Carousel Script

HTML

="center">
="wrapper">
="inner">
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/1.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/2.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/3.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/1.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/2.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/3.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/1.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/2.png">

="content"> >

>UI/UX, Design

>

>
>
="card"> ="https://colorlib.com/preview/theme/seogo/img/case_study/3.png">

="content"> >

>UI/UX, Design

>

>
>
>
>  

="map"> <button class="active first">> <button class="second">> <button class="third">>

>
>

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

UI/UX, Design

CSS

html,
body {
  height: 100%;
}
 
body {
  background: #001d38;
  font-family: "Poppins", sans-serif;
  overflow: hidden;
}
 
.center {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
}
 
.wrapper {
  display: flex;
  grid-gap: 1em;
  overflow: hidden;
  width: 55em;
}
.wrapper > .inner {
  display: flex;
  grid-gap: 1em;
  transition: all 1s ease-in-out;
}
 
.card {
  border-radius: 0.5em;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.5);
}
.card > img {
  border-top-right-radius: inherit;
  border-top-left-radius: inherit;
  display: block;
  width: 17.5em;
}
.card > .content {
  background: #0a2640;
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
  padding: 1em;
  text-align: center;
}
.card > .content > h1, .card > .content > h3 {
  margin: 0.35em 0;
}
.card > .content > h1 {
  color: #fff;
  font-size: 1.25rem;
  line-height: 1;
}
.card > .content > h3 {
  color: #ccc;
  font-size: 0.9rem;
  font-weight: 300;
}
 
.map {
  margin-top: 1em;
}
.map > button {
  all: unset;
  background: #11406c;
  cursor: pointer;
  margin: 0 0.125em;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border-radius: 100%;
  height: 1em;
  width: 1em;
}
.map > button.active:after {
  background: #001d38;
  content: "";
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 50%;
  border-radius: 100%;
  height: 0.5em;
  width: 0.5em;
}

JS

const buttonsWrapper = document.querySelector(".map");
const slides = document.querySelector(".inner");
 
buttonsWrapper.addEventListener("click", e => {
  if (e.target.nodeName === "BUTTON") {
    Array.from(buttonsWrapper.children).forEach(item =>
      item.classList.remove("active")
    );
    if (e.target.classList.contains("first")) {
      slides.style.transform = "translateX(-0%)";
      e.target.classList.add("active");
    } else if (e.target.classList.contains("second")) {
      slides.style.transform = "translateX(-33.33333333333333%)";
      e.target.classList.add("active");
    } else if (e.target.classList.contains('third')){
      slides.style.transform = 'translatex(-66.6666666667%)';
      e.target.classList.add('active');
    }
  }
});

See live demo and download source code.

This awesome script developed by Jake_Woods. Visit their official repository for more information and follow for future updates.


Don’t forget to Subscribe My Public Notebook for more useful free scripts, tutorials and articles.

Leave a Reply

Your email address will not be published. Required fields are marked *

Top