您的位置:

Swiper.js——用一张轮播图,打造一个秀美幻境

轮播图是很多网站都必不可少的功能之一,可以有效地提升网站的视觉效果和交互性,而Swiper.js就是一个非常优秀的轮播图插件。它提供了丰富的轮播图效果、选项、API以及事件,为我们开发和维护轮播图提供了极大的便利。下面我们将从多个方面对Swiper.js做详细的阐述。

一、Swiper.js 清空

当我们需要对Swiper实例进行清空时,我们可以使用 destroy() 方法。该方法会移除Swiper的DOM元素,解绑所有事件和删除API中所有属性。


var mySwiper = new Swiper('.swiper-container', {
  // 选项
});
mySwiper.destroy(); // 在清空之前先销毁Swiper实例
document.querySelector('.swiper-container').innerHTML = ''; // 清空DOM元素

二、Swiper-Item

在Swiper的轮播图中,每个轮播项都是一个swiper-item元素。我们可以通过Swiper提供的配置项来自定义轮播项的样式,如宽度、高度、颜色等等。同时,我们也可以通过给轮播项添加自定义的类名来实现对每个轮播项进行不同的样式控制。


var mySwiper = new Swiper('.swiper-container', {
  slidesPerView: 3, // 一次轮播3个项
  spaceBetween: 30, // 项之间的间隔
  centeredSlides: true, // 当前项居中
  loop: true, // 环形循环
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
  navigation: {
    nextEl: '.swiper-button-next',
    prevEl: '.swiper-button-prev',
  },
});

三、Swiper.js环形循环

Swiper提供了 loop: true 配置项,可以让轮播图形成环形循环,图片可以一直向左或者向右循环轮播,视觉效果比较不错。


var mySwiper = new Swiper('.swiper-container', {
  loop: true, // 环形循环
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
  navigation: {
    nextEl: '.swiper-button-next',
    prevEl: '.swiper-button-prev',
  },
});

四、Swiper.js 3D画廊动效

Swiper提供了很多不同的轮播动画效果,其中3D画廊效果是比较炫酷的一种效果。我们可以通过给Swiper添加自定义的类名来启用这种效果,具体配置可参考Swiper的API。


var mySwiper = new Swiper('.swiper-container', {
  effect: 'coverflow', // 3D画廊效果
  grabCursor: true, // 开启抓手鼠标样式
  centeredSlides: true, // 当前项居中
  slidesPerView: 'auto', // 自由模式
  coverflowEffect: {
    rotate: 30, // 旋转角度
    stretch: 10, // 拉伸
    depth: 60, // 每个item之间的距离
    modifier: 2, // 3D样式的密集度
  },
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
  navigation: {
    nextEl: '.swiper-button-next',
    prevEl: '.swiper-button-prev',
  },
});

五、Swipe

Swiper提供了非常良好的触摸滑动体验,适用于移动端和PC端。我们可以使用手指滑动屏幕的方式来轮播图片,同时也支持PC鼠标拖动实现轮播。


var mySwiper = new Swiper('.swiper-container', {
  direction: 'vertical', // 垂直方向滑动
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
  mousewheel: true, // PC端支持滚轮控制轮播
});

六、Swiper.js 添加自定义类

我们可以通过Swiper提供的回调函数来实现轮播项的自定义样式控制。例如,在 onSlideChangeStart 回调函数中,我们可以获取到当前轮播项的索引,并添加自定义的类名来实现对当前轮播项的样式控制。


var mySwiper = new Swiper('.swiper-container', {
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
  on: {
    slideChangeStart: function () {
      var index = this.activeIndex;
      var prevIndex = this.previousIndex;
      // 删除前一个轮播项的自定义类
      this.slides.eq(prevIndex).removeClass('active');
      // 给当前轮播项添加自定义类
      this.slides.eq(index).addClass('active');
    },
  },
});

七、Swiper.js iOS会自动刷新页面

在iOS系统中,当我们在Swiper容器中使用了手势事件(例如光标和滑动),容器所在的页面可能会在手势结束后自动触发刷新。为了避免这种情况,我们需要禁用默认的滚动行为,具体实现方法如下:


var container = document.querySelector('.swiper-container');
container.addEventListener('touchmove', function (e) {
  e.preventDefault();
}, false);

var mySwiper = new Swiper('.swiper-container', {
  pagination: {
    el: '.swiper-pagination',
    clickable: true,
  },
});

Swiper.js作为一款轻量级的前端轮播插件,它不仅提供了丰富的轮播效果和选项,还提供了非常完善的API和事件,方便我们进行轮播的开发和维护。我们可以根据实际需求来选择我们需要的配置项和动画效果,打造一个视觉效果出众、交互性强的轮播图,从而提高网站的用户体验。

Swiper.js——用一张轮播图,打造一个秀美幻境

2023-05-19
js幻灯片轮番代码案例,js幻灯片轮播原理

本文目录一览: 1、网页轮显幻灯片是怎么做的 2、在javascript中图片的轮番播放怎么做 3、求js轮番图片代码 网页轮显幻灯片是怎么做的 用JS(JavaScript)+CSS或Applet做

2023-12-08
让你的网页更加生动的Swiper.js

2023-05-18
Flutter开发:如何打造高效的轮播图组件

2023-05-17
Swiper.js的全面解析

2023-05-17
js轮播图cs5版本,js轮播图实现

本文目录一览: 1、js图片轮播点击 2、使用dreamweaver cs5如何制作像幻灯片一样播放的图片?cs5中的时间轴已经取消,请高手指点! 3、如何用原生js和css制作轮播图 4、怎么用js

2023-12-08
提高网站用户体验,使用swiper轮播插件

2023-05-23
css+js轮播图,如何用css实现轮播图

本文目录一览: 1、css轮播图怎么实现 2、js还是css错了,轮播图点不动 3、网上下的图片轮播效果的css和js代码怎么弄到DW里? 4、纠结个问题、求大神帮忙解答、用css代替js做横向轮播图

2023-12-08
Superglide:一个优秀的移动端轮播图解决方案

2023-05-19
深入浅出ElementUI轮播图

2023-05-21
js左右滚动幻灯片代码(幻灯片多图滚动)

本文目录一览: 1、js实现图片左右滚动 2、如何制作JS+DIV左右滚动的切换图 3、哪位好心人能否给我写个简单js的幻灯片代码,三个文件(HTML,CSS,JS)我是初学者,一张图片 4、JS如何

2023-12-08
js写轮播图网页(js轮播图的实现)

本文目录一览: 1、怎么用js的原生写法写出来一个轮播图呢? 2、简单的HTML+js图片轮播? 3、js里面可以写轮播图吗? 怎么用js的原生写法写出来一个轮播图呢? 1:排出一个版,包含上下切换的

2023-12-08
java简单轮播图,简单的轮播图

2022-11-20
轮播代码,大图轮播代码

2023-01-06
如何使用Flutter Swiper来创建一个漂亮的轮播控件

2023-05-19
JavaScript轮播图

2023-05-19
网页轮播图用js做,js轮播图怎么实现

本文目录一览: 1、js如何制作图片轮播 2、JS制作轮播图 3、js图片轮播点击 4、js里面可以写轮播图吗? 5、网页设计中如何让图片轮播 js如何制作图片轮播 工具/材料 Sublime Tex

2023-12-08
主轮播图预览

2023-05-18
js轮播图标代码,js自动轮播图代码

本文目录一览: 1、js实现轮播代码怎么写? 2、JS制作轮播图 3、简单的HTML+js图片轮播? 4、JS轮播弹窗代码 5、求首页js轮播图代码 6、图片自动播放轮播JQ,js代码。 js实现轮播

2023-12-08
js写轮播图代码(js轮播图怎么写)

本文目录一览: 1、javascript 轮播 缩略图 怎么实现 2、怎么用js的原生写法写出来一个轮播图呢? 3、JS轮播图,当鼠标悬停于图片时停止轮播,移开继续,代码怎么写? 4、求一个简单的js

2023-12-08