<div class="glide">
<div class="glide__track" data-glide-el="track">
<ul class="glide__slides">
<li class="glide__slide">
<div class="glide__slide">
<div class="card">
</div>
</li>
<li class="glide__slide">
<div class="glide__slide">
<div class="card">
</div>
</li>
<li class="glide__slide">
<div class="glide__slide">
<div class="card">
</div>
</li>
<li class="glide__slide">
<div class="glide__slide">
<div class="card">
</div>
</li>
</ul>
</div>
</div>
.glide__slide {
/* Итак, во всех слайдерах слайды или 100% ширину имеют, или ровно
по 2/3/4/5/.. помещаются на экране.
Но нельзя боковые слайды показывать только на ~10%.
Поэтому все слайды сдвигаются влево, чтобы кусочек всегда справа был виден */
transform: translateX(2.4em);
transition: 0.1s ease-in-out;
}
.glide__slide--active {
/* увеличил и выровнял по центру центральную(активную) карточку */
transform: translateX(-2.4em) scale(1.1) !important;
}
var gliide = new Glide('.glide', {
swipeThreshold: 60,
dragThreshold: 60,
rewind: false,
focusAt: 'center'
});
gliide.on("run.after", () => { //событие перелистывания
if(gliide.index == 0){
//если перелистнули на первый слайд, то
// только следующий подвигается влево, чтобы быть справа чуть-чуть видным
$('.glide__slide--active')[0].nextElementSibling.style.transform='translateX(-7.1em)';
}
else if(gliide.index >= 1 && gliide.index < ($('.glide__slide').length/2)-1) {
//если мы на любом, кроме первого и последнего, то следующий и предыдущий двигаются
$('.glide__slide--active')[0].nextElementSibling.style.transform='translateX(-7.1em)';
$('.glide__slide--active')[0].previousElementSibling.style.transform='translateX(2.4em)';
}
else if(gliide.index == ($('.glide__slide').length/2)-1) {
//если последний слайд, то двигаем предыдущий
$('.glide__slide--active')[0].previousElementSibling.style.transform='translateX(2.4em)';
}
});
gliide.on(['mount.after'], () => {
//при загрузке сайта и слайдера сразу двигаем следующий слайд
$('.glide__slide--active')[0].nextElementSibling.style.transform='translateX(-7.1em)';
});
gliide.mount();
<body>
<div class=”max_width_800”></div>
<div class=”max_width_479”></div>
</body>
.max_width_800{
display: none;
}
.max_width_479{
display: none;
}
@media screen and (max-width: 800px) {
.max_width_800{
display: block;
}
.max_width_479{
display: none;
}
}
@media screen and (max-width: 479px) {
.max_width_800{
display: none;
}
.max_width_479{
display: block;
}
}
if ($('.max_width_800').is(':visible')) {
// код jQuery
}
if ($('.max_width_479').is(':visible')) {
// код jQuery
}
<picture>
<source srcset="img/mount.webp" type="image/webp">
<img class="png" src="img/mount.jpg">
</picture>
<picture>
<source srcset="img/forest.webp" type="image/webp">
<img class="png" src="img/forest.jpg">
</picture>
<meta name="viewport" content="width=device-width, initial-scale=1">
width=device-widthinitial-scale=1
<meta name="viewport" content="initial-scale=1">