文章内容
这个代码实例展示了如何使用SwiperJS创建一个旋转木马效果的图片轮播,其中图片被旋转并缩小以展示其余部分。这个例子简洁明了,并包括了SwiperJS的基本配置.
html代码
<link rel="stylesheet" href="css/swiper-bundle.min.css" /> <link rel="stylesheet" href="css/index.css" /> <div class="w1440"> <div class="pics" id="jqfree"> <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide"> <a href="#"> <img src="images/1.jpg" /> <p> 图片1</p> </a> </div> <div class="swiper-slide"> <a href="#"> <img src="images/2.jpg" /> <p> 图片2</p> </a> </div> <div class="swiper-slide"> <a href="#"> <img src="images/3.jpg" /> <p> 图片3</p> </a> </div> <div class="swiper-slide"> <a href="#"> <img src="images/4.jpg" /> <p> 图片4</p> </a> </div> <div class="swiper-slide"> <a href="#"> <img src="images/5.jpg" /> <p> 图片5</p> </a> </div> <div class="swiper-slide"> <a href="#"> <img src="images/6.jpg" /> <p> 图片6</p> </a> </div> </div> </div> <div class="swiper-button-prev"> </div> <div class="swiper-button-next"> </div> </div> </div> <script src="jquery/3.6.0/jquery.min.js"></script> <script type="text/javascript" src="js/swiper-bundle.min.js"></script> <script> jqfreeSwiper = new Swiper('#jqfree .swiper-container', { watchSlidesProgress: true, slidesPerView: 'auto', centeredSlides: true, loop: true, loopedSlides: 5, autoplay: true, navigation: { nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev', }, pagination: { el: '.swiper-pagination', }, on: { progress: function(progress) { for (i = 0; i < this.slides.length; i++) { var slide = this.slides.eq(i); var slideProgress = this.slides[i].progress; modify = 1; if (Math.abs(slideProgress) > 1) { modify = (Math.abs(slideProgress) - 1) * 0.3 + 1; } translate = slideProgress * modify * 260 + 'px'; scale = 1 - Math.abs(slideProgress) / 5; zIndex = 999 - Math.abs(Math.round(10 * slideProgress)); slide.transform('translateX(' + translate + ') scale(' + scale + ')'); slide.css('zIndex', zIndex); slide.css('opacity', 1); if (Math.abs(slideProgress) > 3) { slide.css('opacity', 0); } } }, setTransition: function(transition) { for (var i = 0; i < this.slides.length; i++) { var slide = this.slides.eq(i) slide.transition(transition); } } } }) </script>