轮播图swiper框架的基本使用

简介: 轮播图swiper框架的基本使用

 简介

Swiper常用于移动端网站的内容触摸滑动

Swiper是纯javascript打造的滑动特效插件,面向手机、平板电脑等移动终端。

Swiper能实现触屏焦点图、触屏Tab切换、触屏轮播图切换等常用效果。

Swiper开源、免费、稳定、使用简单、功能强大,是架构移动终端网站的重要选择!

Swiper 的特色功能

不依赖公共库

Swiper无需加载任何公共库(如jquery)即可运行,这保证了Swiper的轻量和运行速度。Swiper也可以在加载了公共库的环境下安全的运行,如jQuery, Zepto, jQuery Mobile等

支持流行的前端框架

从Swiper6版本开始提供了流行前端框架的支持,可以将swiper作为组件添加到这些框架中方便使用,如React,Svelte,Vue.js,Angular等

下载

英文网址

中文网址

这里演示中文的下载过程

点击获取swiper 下载本地的压缩包或者获取cdn在线链接

image.gif编辑

下载某个版本的完整压缩包,也可以根据需求下载指定文件。

image.gif编辑

还可以通过npm下载 获取swiper插件

$ npm install swiper

image.gif

使用

每个版本的使用 都有些略微的差别,主要体现在导入文件名以及类名上面,

我们可以点击关于swiper,里面有每次更新的记录,修改了哪些。

image.gif编辑

image.gif编辑

image.gif编辑

我们选择网页的在线演示,可以查看一些现成的效果,上面标志着数字,选中一款效果后,解压下载的swiper压缩包之后点进去选择demo文件夹,里面是一些效果的演示文件,选择对应数字的html文件,我们可以直接使用这些现成的效果,根据自己的需求进行修改,如大小,位置,以及一些相关效果,如是否自动播放。

image.gif编辑

直接拖动到编辑器  或者打开网页查看网页源码复制使用。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="https://unpkg.com/swiper@8.3.0/swiper-bundle.min.css">
    <script src="https://unpkg.com/swiper@8.3.0/swiper-bundle.min.js"> </script>
    <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-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;
        }
        .swiper {
            width: 100%;
            height: 300px;
            margin: 20px auto;
        }
        .append-buttons {
            text-align: center;
            margin-top: 20px;
        }
        .append-buttons button {
            display: inline-block;
            cursor: pointer;
            border: 1px solid #007aff;
            color: #007aff;
            text-decoration: none;
            padding: 4px 10px;
            border-radius: 4px;
            margin: 0 10px;
            font-size: 13px;
        }
    </style>
</head>
<body>
    <!-- Swiper -->
    <div #swiperRef="" 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>
        <div class="swiper-button-next"></div>
        <div class="swiper-button-prev"></div>
        <div class="swiper-pagination"></div>
    </div>
    <p class="append-buttons">
        <button class="prepend-2-slides">Prepend 2 Slides</button>
        <button class="prepend-slide">Prepend Slide</button>
        <button class="append-slide">Append Slide</button>
        <button class="append-2-slides">Append 2 Slides</button>
    </p>
    <!-- Swiper JS -->
    <script src="../swiper-bundle.min.js"></script>
    <!-- Initialize Swiper -->
    <script>
        var swiper = new Swiper(".mySwiper", {
            slidesPerView: 3,
            centeredSlides: true,
            spaceBetween: 30,
            pagination: {
                el: ".swiper-pagination",
                type: "fraction",
            },
            navigation: {
                nextEl: ".swiper-button-next",
                prevEl: ".swiper-button-prev",
            },
        });
        var appendNumber = 4;
        var prependNumber = 1;
        document
            .querySelector(".prepend-2-slides")
            .addEventListener("click", function (e) {
                e.preventDefault();
                swiper.prependSlide([
                    '<div class="swiper-slide">Slide ' + --prependNumber + "</div>",
                    '<div class="swiper-slide">Slide ' + --prependNumber + "</div>",
                ]);
            });
        document
            .querySelector(".prepend-slide")
            .addEventListener("click", function (e) {
                e.preventDefault();
                swiper.prependSlide(
                    '<div class="swiper-slide">Slide ' + --prependNumber + "</div>"
                );
            });
        document
            .querySelector(".append-slide")
            .addEventListener("click", function (e) {
                e.preventDefault();
                swiper.appendSlide(
                    '<div class="swiper-slide">Slide ' + ++appendNumber + "</div>"
                );
            });
        document
            .querySelector(".append-2-slides")
            .addEventListener("click", function (e) {
                e.preventDefault();
                swiper.appendSlide([
                    '<div class="swiper-slide">Slide ' + ++appendNumber + "</div>",
                    '<div class="swiper-slide">Slide ' + ++appendNumber + "</div>",
                ]);
            });
    </script>
</body>
</html>

image.gif

image.gif编辑

具体的使用请大家查看api文档进行学习

比如自动播放 我们只需要

<script>
var mySwiper = new Swiper('.swiper', {
  autoplay:true,//等同于以下设置
  /*autoplay: {
    delay: 3000,
    stopOnLastSlide: false,
    disableOnInteraction: true,
    },*/
});
</script>

image.gif

更多的细节修改,请多多学习api文档。

image.gif编辑


目录
相关文章
|
存储 JSON SpringCloudAlibaba
Sentinel使用及规则配置
Sentinel使用及规则配置
2451 0
Sentinel使用及规则配置
|
8月前
|
安全 5G 网络安全
RDP:你的远程办公"任意门"使用说明书(附防黑客秘籍)
本文趣味讲解远程桌面协议(RDP)的前世今生,从1998年诞生到如今支持4K高清的Win11版本,带你了解其技术进化。文章剖析RDP工作原理,如数据加密传输、省流模式等,并警示安全风险,提供防护建议。此外,还对比了SSH、VNC等协议特点,展望RDP在量子计算与5G时代的未来,提醒用户平衡虚拟与现实生活。内容轻松幽默,适合各路“社畜”与技术爱好者阅读。
523 2
|
7月前
|
JavaScript 前端开发 编译器
Vue与TypeScript:如何实现更强大的前端开发
Vue.js 以其简洁的语法和灵活的架构在前端开发中广受欢迎,而 TypeScript 作为一种静态类型语言,为 JavaScript 提供了强大的类型系统和编译时检查。将 Vue.js 与 TypeScript 结合使用,不仅可以提升代码的可维护性和可扩展性,还能减少运行时错误,提高开发效率。本文将介绍如何在 Vue.js 项目中使用 TypeScript,并通过一些代码示例展示其强大功能。
321 22
|
9月前
|
数据采集 安全 算法
315曝光“精准获客”黑色产业链,WoSign SSL证书助您守护数据安全
315晚会揭露了隐私窃取黑幕,一些公司滥用网络爬虫技术和未加密数据传输,非法获取用户信息。事件凸显数据安全的重要性,HTTPS加密(如SSL/TLS)可保护数据传输安全,确保信息不被窃取或篡改。阿里云WoSign SSL证书提供可靠解决方案,助力政企防范风险,保障用户隐私与数据安全,推动数字化时代健康发展。
474 3
315曝光“精准获客”黑色产业链,WoSign SSL证书助您守护数据安全
|
10月前
|
数据挖掘 BI
|
消息中间件 Linux 调度
【Linux 进程/线程状态 】深入理解Linux C++中的进程/线程状态:阻塞,休眠,僵死
【Linux 进程/线程状态 】深入理解Linux C++中的进程/线程状态:阻塞,休眠,僵死
1165 0
|
机器学习/深度学习 算法 网络架构
基于深度学习的图像识别优化策略
【2月更文挑战第21天】 随着人工智能技术的飞速发展,深度学习在图像识别领域取得了突破性进展。然而,在实际应用中,模型的识别效率和准确性常常受限于数据量、计算资源和算法设计。本文旨在探讨针对现有深度学习模型的图像识别优化策略,通过改进训练过程、网络结构与后处理技术,提高模型性能并减少计算资源的消耗。
|
存储 缓存 JavaScript
vue三种路由守卫详解
在 Vue 中,可以通过路由守卫来实现路由鉴权。**Vue 提供了三种路由守卫:全局前置守卫、全局解析守卫和组件内的守卫
|
SQL 缓存 流计算
在 Flink CDC 中,可以采用多种方法处理维表实时更新滞后
在 Flink CDC 中,可以采用多种方法处理维表实时更新滞后
359 1
|
Java 数据库连接 数据库
解决docker中运行的jar包连不上数据库
解决docker中运行的jar包连不上数据库