<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Swiper demo</title>
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
<!-- Link Swiper's CSS -->
<link rel="stylesheet" href="./swiper-bundle.min.css" />
<!-- Demo styles -->
<style>
html,
body {
position: relative;
height: 100%;
}
body {
background: #eee;
font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
font-size: 14px;
color: #000;
margin: 0;
padding: 0;
}
.swiper {
width: 100%;
height: 100%;
}
.swiper-slide {
text-align: center;
font-size: 18px;
background: #fff;
/* Center slide text vertically */
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
}
.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
body {
background: #eee;
}
.swiper {
width: 100%;
height: 300px;
margin: 20px 0;
}
</style>
</head>
<body>
<!-- Swiper -->
<div class="swiper mySwiper">
<div class="swiper-wrapper">
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
<div class="swiper-slide">Slide 3</div>
<div class="swiper-slide">Slide 4</div>
<div class="swiper-slide">Slide 5</div>
<div class="swiper-slide">Slide 6</div>
<div class="swiper-slide">Slide 7</div>
<div class="swiper-slide">Slide 8</div>
<div class="swiper-slide">Slide 9</div>
</div>
<div class="swiper-pagination"></div>
</div>
<div class="swiper mySwiper2">
<div class="swiper-wrapper">
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
<div class="swiper-slide">Slide 3</div>
<div class="swiper-slide">Slide 4</div>
<div class="swiper-slide">Slide 5</div>
<div class="swiper-slide">Slide 6</div>
<div class="swiper-slide">Slide 7</div>
<div class="swiper-slide">Slide 8</div>
<div class="swiper-slide">Slide 9</div>
</div>
<div class="swiper-pagination"></div>
</div>
<!-- Swiper JS -->
<script src="./swiper-bundle.min.js"></script>
<!-- Initialize Swiper -->
<script>
// var swiper = new Swiper(".mySwiper", {
// spaceBetween: 30,
// pagination: {
// el: ".swiper-pagination",
// clickable: true,
// },
// });
// var swiper2 = new Swiper(".mySwiper2", {
// spaceBetween: 30,
// pagination: {
// el: ".swiper-pagination",
// clickable: true,
// },
// });
// var swiper3 = new Swiper(".mySwiper3", {
// spaceBetween: 30,
// pagination: {
// el: ".swiper-pagination",
// clickable: true,
// },
// });
/*
如果想要第一个控制第二个
那么需要先将第二个swiper进行初始化,
否则第一个swiper在设置时会报错说swiper2未定义
*/
var Swiper2 = new Swiper('.mySwiper', {
slidesPerView: 3, //设置slider容器能够同时显示的slides数量,可以设置数字
spaceBetween: 20, //两个slide之间的距离
centeredSlides: true, //滑块居中模式
loop: true, //是否循环
slideToClickedSlide: true, //设置为true则点击slide会过渡到这个slide。
// breakpoints: {
// 1024: { //大于等于1024时
// slidesPerView: 5,
// spaceBetween: 20
// },
// 1150: { //大于等于1150时
// slidesPerView: 5,
// spaceBetween: 30
// }
// }
})
var Swiper1 = new Swiper('.mySwiper2', {
slidesPerView: 1,
spaceBetween: 20,
loop: true,
centeredSlides: true,
slideToClickedSlide: true,
navigation: { //使用前进后退按钮
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
//设置双向控制的参数,或者true使用默认设置
//还需要设置control为swiper实例,控制该swiper,而不是被该swiper控制
controller: {
control: Swiper2, //这里需要在Swiper2的初始化完成之后
},
// breakpoints: {
// 1024: { //大于等于1024时
// slidesPerView: 3,
// spaceBetween: 30
// }
// }
})
Swiper2.controller.control = Swiper1; //Swiper2控制Swiper1,需要初始化Swiper1之后
Swiper1.controller.control = Swiper2; //Swiper1控制Swiper2,需要初始化Swiper2之后
</script>
</body>
</html>
引用的swiper 双向控制时上方三块和下方一块有些对应不上