前端插件swiper基础使用详解&含部分常用API

swiper插件

swiper是一款功能强大、开源、免费的的前端轮播图插件。而且面向手机平板等移动终端(更多介绍可以去官网进行查看)。
最近做项目时用到了这个插件,官网的文档看的我很难受!

使用方法

导入文件

首先这个插件和其他的插件一样要引入文件,不同Swiper版本用到的文件名略有不同。我下载的版本是swiper-6.4.15版本里面有一堆奇奇怪怪的文件包含了在里面。我们在package文件夹下找到下面这四个文件放入你的项目里就可以了,
前端插件swiper基础使用详解&含部分常用API_第1张图片
最后我们导入这两个文件就可以使用了

<link rel="stylesheet" href="css/swiper-bundle.min.css">
<script src="./js/swiper-bundle.min.js">script>

添加html部分

1.swiper-container最外层的div是一个容器
2.swiper-wrapper是一个按照一定顺序排列的所有轮播图的集合,在默认情况下是从左到右排列
3.swiper-slide:你的每一张轮播图。
4.swiper-pagination是分页器导航,也就是下图所显示的原点
在这里插入图片描述
5.swiper-button-prev swiper-button-next 插件默认的按钮左右箭头
6.swiper-scrollbar滚动条
这段代码是官网上的可以直接复制使用,

<div class="swiper-container">
        <div class="swiper-wrapper">
            <div class="swiper-slide"><img src="./image/轮播/202104011128519006001.jpg" alt="">div>
            <div class="swiper-slide"><img src="./image/轮播/202104011133182944010.jpg" alt="">div>
            <div class="swiper-slide"><img src="./image/轮播/202104121130451705637.png" alt="">div>
        div>
        
        <div class="swiper-pagination">div>

        
        <div class="swiper-button-prev">div>
        <div class="swiper-button-next">div>

        
        <div class="swiper-scrollbar">div>
    div>

在写完html代码后我们还需要对这个轮播图进行初始化

<script>
	var swiper = new Swiper('.swiper-container', {
     
            pagination: {
     
                el: '.swiper-pagination',
                dynamicBullets: true,
            },
        });
</script>

这个初始化有两个参数
第一个参数:Swiper容器的css选择器,当然你也可以把.swiper-container换成任何你自定义的名字。
第二个参数:Swiper的个性化配置。(是以一个对象的形式传参的)


在完成上面几步后轮播图主体就完成了。
下面我介绍几种常用的API

常用的API

其实我觉得你可以理解为给第二个参数(这个对象)设置属性值。属性名默认给你了

pagination(分页器)

pagination是一个对象这个对象也有属性

 el: '.swiper-pagination'

el: 分页器容器的css选择器或HTML标签。分页器等组件可以置于container之外,(也就是说你的分页器可以放在轮播图容器的外面)

 type: 'bullets'

type: 分页器的样式

可选类型:
‘bullets’ 圆点(默认)
‘fraction’ 分式
‘progressbar’ 进度条
‘custom’ 自定义

dynamicBullets: true

dynamicBullets: 动态分页器,当你的slide很多时,开启后,分页器小点的数量会部分隐藏。

hideOnClick :true

hideOnClick : 点击轮播图时隐藏分页器

clickable :true

clickable : 设置后你可以通过点击来使轮播图片切换

renderBullet: function (index, className) {
     
          return '+ className + '">' + (index + 1) + '';
        }

**renderBullet: ** 设置了这个属性你就可以设置自己的分页器样式,该属性是一个函数类型,参数是下标索引和类名
类名默认是swiper-pagination-bullet你不用管他)
这个函数的返回值会添加在swiper-pagination中你也可以 在返回值中拼接img标签完成用图片切换轮播图

navigation(前进后退按钮)

 var mySwiper = new Swiper('.swiper-container', {
     
    navigation: {
     
      nextEl: '.swiper-button-next',
      prevEl: '.swiper-button-prev',
    },
  });
nextEl: '.swiper-button-next'
 prevEl: '.swiper-button-prev'

不多说默认的左箭头和右箭头
记住.swiper-button-next找 nextEl 下一张
.swiper-button-prev找 prevEl 上一张

你要是搞反了,会出现点击左箭头跑到下一张的情况

autoplay(自动轮播)

  delay: 2000//2秒切换一次

delay: 自动轮播的时间,延时多少秒切换下一张图片

disableOnInteraction: false

**disableOnInteraction: ** 在设置false时,你对轮博图操作不会停止循环,而true,在你对轮博图操作时会停止自动轮播

//鼠标覆盖停止自动切换
mySwiper.el.onmouseover = function(){
     
  mySwiper.autoplay.stop();
}

//鼠标离开开始自动切换
mySwiper.el.onmouseout = function(){
     
  mySwiper.autoplay.start();
}

**mySwiper.autoplay.stop() mySwiper.autoplay.start()**一个开始轮播,一个暂停轮播,不多说,那个mySwiper应该是可以修改的,名字是你初始化的swiper名字。

methods(swiper方法)

这些方法一般用在外部的元素操控轮播图的切换

 mySwiper.slideTo(0, 1000, false);//切换到第一个slide,速度为1秒

mySwiper.slideTo 这个就是根据下标来切换指定的图片(还挺有用的,我这个项目正好用到这个方法了)第三个值:设置为false时不会触发transition回调函数

$('#btn1').click(function(){
    mySwiper.slidePrev();
  })
  $('#btn2').click(function(){
    mySwiper.slideNext();
  })

mySwiper.slidePrev() mySwiper.slideNext()
看到这个next和prev就知道这个控制切换上一张和下一张的方法

properties(swiper方法)

mySwiper.realIndex

mySwiper.realIndex 获取当前轮播图的索引(感觉这个用到的地方会很多)从0开始

mySwiper.isEnd

mySwiper.isEnd 判断是不是最后一张轮播图。

(如果这篇文章有什么问题请及时联系我!)

你可能感兴趣的:(js学习,js,javascript)