Картина такая, слайдер, видно два слайда, тот слайд что слева, в уменьшенном размере, справа главный слайд, справа от него кнопки переключения. При переключении слайды меняются местами, уменьшенный становится нормального размера, а первый слайд уменьшается и встаёт на место первого слайда.
Код слайдера:
<div id="slider_prod" class="hcg-slider">
<div class="hcg-slide-container">
<div class="hcg-slider-body"></div>
<div class="btn-prod">
<img src="img/prev.svg" class="hcg-slide-prev" href="#"></img>
<img src="img/next.svg" class="hcg-slide-next" href="#"></img>
</div>
</div>
</div>
CSS
#slider_prod .hcg-slide-container {
width: 458px;
height: 270px;
}
.hcg-slider {
text-align: center;
font-family: Arial, Helvetica, sans-serif;
}
.hcg-slide-container {
max-width: 100%;
display: inline-block;
position: relative;
}
.hcg-slides {
display: none;
flex: 0 0 50%;
max-width: 100%;
text-align: center;
overflow: hidden;
}
.hcg-slides img {
max-width: 100%;
max-height: 100%;
display: inline-block;
border-radius: 5px;
border: solid 1px #a0a0a0;
vertical-align: middle;
}
.hcg-slide-prev, .hcg-slide-next {
cursor: pointer;
position: absolute;
top: 50%;
width: auto;
padding: 16px;
margin-top: -22px;
color: #fff;
font-weight: bold;
font-size: 18px;
transition: 0.6s ease;
border-radius: 0 3px 3px 0;
text-decoration: none;
}
.hcg-slide-next {
right: -150px;
bottom: 0;
border-radius: 3px 0 0 3px;
}
.hcg-slide-prev {
right: -150px;
top: 10%;
border-radius: 0 3px 3px 0;
}
.hcg-slide-prev, .hcg-slide-next {
background-color: #000c;
}
(function(){
//If you want to include more images, add the link name and URL of the image in the array list below.
let images_list = [
{"url":"img/1.png","name":"image 1","link":""},
{"url":"img/2.png","name":"image 2","link":""},
];
let slider_id = document.querySelector("#slider_prod");
// append all images
let images_div = "";
for (let i = 0; i < images_list.length; i++) {
// if no link without href="" tag
let href = (images_list[i].link == "" ? "":' href="'+images_list[i].link+'"');
images_div += '<a'+href+' class="hcg-slides animated"'+(i === 0 ? ' style="display:block"':'')+'>'+
'<img src="'+images_list[i].url+'" alt="'+images_list[i].name+'">'+
'</a>';
}
slider_id.querySelector(".hcg-slider-body").innerHTML = images_div;
let slide_index = 0;
let images = slider_id.querySelectorAll(".hcg-slides");
let prev_button = slider_id.querySelector(".hcg-slide-prev");
let next_button = slider_id.querySelector(".hcg-slide-next");
function showSlides() {
if (slide_index > images.length-1) {
slide_index = 0;
}
if (slide_index < 0) {
slide_index = images.length-1;
}
for (let i = 0; i < images.length; i++) {
images[i].style.display = "none";
if (i == slide_index) {
images[i].style.display = "block";
}
}
}
prev_button.addEventListener("click", function(event) {
event.preventDefault();
slide_index--;
showSlides();
}, false);
next_button.addEventListener("click", function(event){
event.preventDefault();
slide_index++;
showSlides();
}, false);
})();