swiper实现无限滚动轮播、左右切换

2023-11-16

废话不多说,直接上代码

const mySwiper = ref<any>()
const data = ref<API.homeIndexList[]>([])
const lastNeedSwiperSpeed = ref<number>(0) // 平滑移动到swiper1.translate需要的速度
const ifBtn = ref<boolean>(true)//控制点击第一次的时候执行
const init = (indexList: API.homeIndexList[]) => {
    data.value = indexList
    nextTick(() => {
        mySwiper.value = new Swiper('.homeIndex-swiper-container', {
            autoplay: {
                delay: 0,
                stopOnLastSlide: false,
                disableOnInteraction: true,
            },
            speed: 8000,
            loop: true,
            slidesPerView: 4,
            slidesPerGroup: 1,
        });
        // 实现 鼠标移入swiper-container时,轮播图停止;鼠标移出时,轮播图继续
        const homeIndexId: any = document.getElementById('homeIndex-swiper-container');
        homeIndexId.onmouseenter = function () {
            lastNeedSwiperSpeed.value = Math.abs(Math.abs(mySwiper.value.getTranslate()) - Math.abs(mySwiper.value.translate)) / (mySwiper.value.width/4) * mySwiper.value.params.speed;
            // setTranslate到当前位置,并停止autoplay            
            mySwiper.value.setTranslate(mySwiper.value.getTranslate());
            mySwiper.value.autoplay.stop();
        }
        //鼠标移出滚动
        homeIndexId.onmouseleave = function () {
            mySwiper.value.slideTo(mySwiper.value.activeIndex, lastNeedSwiperSpeed.value);
            mySwiper.value.autoplay.start();
            ifBtn.value = true
        }
    })
}
const prev = ()=>{
    mySwiper.value.slideTo(mySwiper.value.activeIndex-1, 300);
}
const next = ()=>{
    if(ifBtn.value){
        mySwiper.value.slideTo(mySwiper.value.activeIndex, 300);
        ifBtn.value = false
    }else{
        mySwiper.value.slideTo(mySwiper.value.activeIndex+1, 300);
    }
    
}

欢迎讨论交流

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

swiper实现无限滚动轮播、左右切换 的相关文章

  • 从选择 onChange 调用 javascript 函数 [重复]

    这个问题在这里已经有答案了 所以我有一个简单的 HTML 选择框和一个 javascript 警报功能 我希望选择框有一个 onchange 事件来调用 javascript 警报函数 这是我到目前为止所拥有的 HTML div Type
  • 判断字符串是否包含有效的javascript代码

    我正在寻找一个C 返回的函数true如果字符串包含有效的 JavaScript 语法 例如 IsValidJavascript alert hello 会回来true but IsValidJavascript alertXXhelloZ
  • 使用 jQuery inputmask 插件范围 0-100

    如何创建 0 到 100 范围内的掩码 document ready function masked inputmask 您可以使用jquery inputmask regex extensions js为了那个原因 你可以找到带有所有扩展
  • 如何使用CSS缩放图像以填充div并保持纵横比?

    我想用一个 div 填充img 保持纵横比并根据需要拉伸宽度或高度以适应 div style width 80px height 80px img src div 我怎样才能实现它 如果图像不是二次方的 则必须将其 放大 并根据哪一侧较大而
  • EmberJS:对象作为查询参数来刷新模型

    我遵循了查询参数指南 http guides emberjs com v1 11 0 routing query params http guides emberjs com v1 11 0 routing query params 而且效
  • Bootstrap 4 Beta 0 网格系统上的 Rowspan

    您好 我正在开发一个使用 Bootstrap 4 Beta 的电子商务模板 我让它在移动设备上工作 但在桌面设备上我不知道如何让购买按钮保持在标题下 在我的方法中 它出现在 图库 部分下 Desired Desktop Desired Mo
  • websockets 如何处理同一浏览器的两个选项卡

    I have 1 个 PHP 服务器 提供 http 请求 和 1 node js 发布更新的数据消息 每个连接都带有 websocket php 服务器设置其 cookie 在一个浏览器中 此 cookie 可在所有选项卡中使用 当浏览器
  • Firefox Addon 中的 JQuery 导致多个警告

    我在 Firefox 插件中使用 jquery 但我不断收到大量警告消息 如下所示 anonymous function does not always return a value System JS WARNING resource g
  • Chrome --app 相当于 Firefox\IE

    我有一个网络应用程序 客户要求单击不同按钮时更改浏览器窗口大小 我发现在那link https stackoverflow com questions 13436855 launch google chrome from the comma
  • HTML5 文件 API 和 AJAX 上传分块问题

    我编写了一个带有单独进度的拖放多个文件上传等 除了一件事之外 它工作得非常好 上传较大文件时 有时浏览器会锁定 直到上传完成 我认为这是因为该文件存储在浏览器的内存中并占用了浏览器可用的所有资源 我想知道 是否可以逐段读取文件并在读取时通过
  • 如何更改 HTML 文档的“实际编码”?

    我通过 W3C HTML 验证器运行我的网页并收到此错误 编码ascii不是字符的首选名称 使用中的编码 首选名称是 us ascii Charmod C024 第 5 行 第 70 列 内部编码声明 utf 8 不同意 文档的实际编码 u
  • Svelte 条件元素类报告为语法错误

    我正在做一个if块每if 块的精简指南 https svelte technology guide if blocks 这看起来很简单 但 Svelte 认为这是一个语法错误 svelte plugin ParseError Unexpec
  • 如何从 CSS 选择器中提取类名?

    故事 我目前正在构建一个 ESLint 规则 以警告在 CSS 选择器定位器中使用引导布局导向和角度技术类 目前我在字符串方法中使用简单的子字符串 for var i 0 i lt prohibitedClasses length i if
  • 为什么 call 比 apply 快那么多?

    我想知道是否有人知道why call比apply 在 Chrome 中 速度大约快 4 倍 在 Firefox 中快 30 倍 我什至可以制作自定义原型 apply2 在大多数情况下 运行速度是apply 这个想法取自角度 Function
  • 在反应中访问回调内的 event.target

    我有以下课程片段 constructor props super props this timeout null search e gt clearTimeout this timeout this timeout setTimeout f
  • Google 地图 API - 地图未显示 - 没有错误

    我正在尝试将地图从 Google API 加载到 div 中 但是 地图未加载 并且没有输出任何错误 这是代码 google maps var geocoder map function codeAddress address geocod
  • 使用flex-basis控制行上显示的项目数

    我想在使用 Flex 时将元素推出以隐藏它们 例如 如果flex basis为 50 仅显示两个项目弯曲到给定空间 而其他元素则在overflow hidden 领土 Or if flex basis为 25 则仅显示 4 个 Flex 元
  • 我自己的而不是从其他网站借用的图像的正确 img src 是什么?

    在我的计算机上 保存 css 和 html 文件的文件夹还包含一些我想要插入到 html 中的图像 如果我从其他网站借用图像 我知道如何获取图像的 URL 如何获取文件夹中但尚未出现在互联网上的图像的 URL 我是否必须将图像上传到其他网站
  • 如何跨多个文件跨越 javascript 命名空间?

    我永远忽略了javascript 几年前我开始使用 jQuery 这样我就可以过得去 但随着我开始更多地进行 TDD 我昨天决定真正深入研究 javascript 之后可能还有咖啡脚本 在我的 ASP NET Web 窗体应用程序中 我有很
  • Graphql 将多个查询合并(组合)为一个?

    我正在尝试使用 JavaScript 将多个 GraphQL 查询合并为一个查询 我正在寻找这样的东西 let query3 mergeQueries query1 query2 我们事先不知道哪些查询将被组合 假设我有这样的查询 输入查询

随机推荐

  • Entity Framework Core系列教程-24-使用存储过程

    在Entity Framework Core中使用存储过程 在这里 您将学习如何在Entity Framework Core中执行数据库存储过程 EF Core提供了以下方法来执行存储过程 DbSet
  • 【总结】C++各种进制转换函数汇总

    文章目录 前言 一 指定格式转换输出 二 任意2 36进制数转化为10进制数 三 10进制数转换为任意的n进制数 四 使用字符串流string stream进制转换 前言 进制之间的转换有两种方法 自定义进制转换函数 将一个n进制的数转换为
  • FFmpeg中AVDictionary介绍

    FFmpeg中的AVDictionary是一个结构体 简单的key value存储 经常使用AVDictionary设置或读取内部参数 声明如下 具体实现在libavutil模块中的dict c h 提供此结构体是为了与libav兼容 但它
  • gcc命令生成静态库和动态库

    一 基本概念1 1什么是库在windows 平台和linux 平台下都大量存在着库 本质上来说库是一种可执行代码的二进制形式 可以被操作系统载入内存执行 由于windows 和linux 的平台不同 主要是编译器 汇编器和连接器的不同 因此
  • pandas 数据结构

    Series常用操作 知道 Series创建 传入一个Python列表 如果传入的数据类型是统一的数字 那么最终的dtype类型是int64 如果传入的数据类型是统一的字符串 那么最终的dtype类型是object 如果传入的数据类型是多种
  • TensorFlow搭建CNN-LSTM混合模型实现多变量多步长时间序列预测(负荷预测)

    目录 I 前言 II CNN LSTM III 代码实现 3 1 数据处理 3 2 模型训练 测试 3 3 实验结果 IV 源码及数据 I 前言 前面已经写了很多关于时间序列预测的文章 深入理解PyTorch中LSTM的输入和输出 从inp
  • input标签限制只能输入数字

  • 操作系统实验:银行家算法(C语言)

    实验内容 某系统中进程P1 P2 P3 Pn 同时请求资源R1 R2 R3 Rn 已知t0时刻资源分配情况 参考下表 1 编写程序 分析当前系统状态是否安全 若系统安全 请输出安全序列 2 在系统安全的情况下 若有进程提出资源请求 如t1时
  • 人脸识别之caffe-face

    该论文为2016年的一篇ECCV ADiscriminative Feature Learning Approach for Deep Face Recognition 还是深圳先进院乔宇老师组的一篇 不管是思想还是效果都非常的棒 论文思想
  • Perl调用shell命令方法小结(system/反引号/exec)

    system 反引号 exec 为避免shell命令的特殊符号采用先变量定义的方法 system perl也可以用system调用shell的命令 它和awk的system一样 返回值也是它调用的命令的退出状态 root AX3sp2 ca
  • 单片机控制继电器实验

    单片机控制继电器实验 在各种自动控制设备中 都存在一个低压的自动控制电路与高压电气电路的互相连接问题 一方面要使低压的电子电路的控制信号能够控制高压电气电路的执行元件 如电动机 电磁铁 电灯等 另一方面又要为电子线路的电气电路提供良好的电隔
  • 如何安装以及用相关插件配置OBSIDIAN?

    之前看人推荐logseq就尝试了一下 吐槽跨设备同步难搞 然后被人种草了Obsidian 这几天使用下来感觉确实比logseq好用多了 第三方插件同步虽然有点冲突但大体上还好 现在考虑怎么去合理规划tag以及wiznote笔记的迁移 虽说感
  • 刷脸支付机会是留给敢迈出第一步的人

    从支付宝推出余额宝 花呗等功能大幅培养用户理财习惯 到微信支付通过微信红包打通朋友圈 微信支付和支付宝的擂台之战从未平息 面对10亿交易笔数到20亿的跨越 较量已经从扫码支付延伸至了各式各样的甚至难啃的场景 比如停车场无感支付 线下的刷脸支
  • Docker笔记(精简版)

    文章目录 初始Docker 学习背景 Docker解决依赖兼容问题 Docker解决操作系统环境差异 Docker架构 镜像和容器 DockerHub Docker架构 安装Docker 卸载 可选 安装Docker 启动docker 配置
  • VS静态编译C/C++解决程序丢失 VCRUNTIME140.dll

    VS静态编译C C 解决程序丢失 VCRUNTIME140 dll1VS静态编译C C 解决程序丢失 VCRUNTIME140 dll2VS静态编译C C 解决程序丢失 VCRUNTIME140 dll3VS静态编译C C 解决程序丢失 V
  • 【C++ 并发与多线程】std::thread类-为共享数据加锁 2

    正交 消除无关事务之间的影响 力求高内聚低耦合 死锁的概念略去不说 死锁有可能发生在使用多个互斥量的场景下 也可能存在没有使用互斥量的场景 两个线程都在等待对方释放互斥量 两个线程都调用了对方的join 函数 为了解决两个线程都在等待对方释
  • 实施前端微服务化的六七种方式

    微前端架构是一种类似于微服务的架构 它将微服务的理念应用于浏览器端 即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用 由此带来的变化是 这些前端应用可以独立运行 独立开发 独立部署 以及 它们应该可以在共享组件的同时进
  • 记一次Nginx代理Mysql服务的经历

    背景 根据组长背景描述 具备以下前提 1 Mysql服务器为 某A云厂商的RDS SAAS服务 但是不开通外网服务 2 EC2 服务器一台 某A云厂商LaaS服务 也不开通外网 3 阿里云服务器一台 这台服务器有服务需要连接Mysql服务
  • 多列索引

    单列索引与多列索引 索引可以是单列索引 也可以是多列索引 下面我们通过具体的例子来说明这两种索引的区别 假设有这样一个people表 CREATE TABLE people peopleid SMALLINT NOT NULL AUTO I
  • swiper实现无限滚动轮播、左右切换

    废话不多说 直接上代码 const mySwiper ref