当前位置: 首页 > news >正文

【vue】实现自动轮播+滚轮控制

前言
有一个无缝轮播+滚轮控制的需求,找了很多的方法发现都没办法完美的实现这种效果。
用原生的js实现不是无缝滚动
用无缝滚动插件实现,发现pc端无法实现滚轮控制

目标

1 实现表格表无缝循环滚动
2 实现滚轮控制表格表数据滚动
3 掌握vue-seamless-scroll使用方式

一些思考
如何去完美的实现无缝轮播+滚轮控制效果呢?,查询了很多资料都没有很完美的兼容两者优点的解决方法。推荐最多的方式就是以下两个:
写JS实现,但实现的思路无外乎用定时+scrollTop去实现(若有其他的方案,欢迎留言),这种scrollTop方式必然导致闪动,不是无缝的。
第三方组件vue-seamless-scroll可以完美的实现无缝自动滚动,但是pc端却也无法通过滚轮去控制滚动。

vue-seamless-scroll无缝滚动的很完美,我就在想能不能试着改动或者操作vue-seamless-scroll组件去实现滚轮控制呢。于是开始了以下的尝试

前期工作

1 安装

npm install vue-seamless-scroll --save

2 引入并注册

import VueSeamlessScroll from "vue-seamless-scroll";
export default {name: "SeamleScroll",components: {VueSeamlessScroll,},
}

3 使用组件

<vue-seamless-scroll ref="seamleScroll" class="seamlessScroll" :data="tableData" :class-option="scrollOptions">
// 要滚动的内容
</vue-seamless-scroll>

在开始之前,先看一下这个第三方组件有哪些参数或者属性

官方源代码:vue-seamless-scroll
vue-seamless-scroll文档
configure

key描述默认值类型
step滚动速度1Number
limitMoveNum开始无缝滚动的最小数据量5Number
hoverStop是否开启鼠标悬停stoptrueBoolean
direction方向:0向下 1向上 2向左 3向右1Number
openTouch是否开启移动端触屏trueBoolean
waitTime单步运动停止的时间(默认值1000ms)1000Boolean

基本属性配置

  data() {return {scrollOptions:{step: 1,limitMoveNum: 2, // 开始无缝滚动的最小数据量hoverStop: true, // 是否开启鼠标悬停stopopenTouch: true, direction: 1, // 0向下 1向上 2向左 3向右openWatch: true, // 开启数据实时监控刷新domsingleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3waitTime: 1000, // 单步运动停止的时间(默认值1000ms)}};},

将基本配置scrollOptions传递给第三方组件vue-seamless-scroll

http://www.lryc.cn/news/391078.html

相关文章:

  • 鸿翼FEX文件安全交换系统,打造安全高效的文件摆渡“绿色通道”
  • 苹果电脑虚拟机运行Windows Mac环境安装Win PD19虚拟机 parallels desktop19虚拟机安装教程免费密钥激活
  • 昇思25天学习打卡营第11天|基于MindSpore通过GPT实现情感分类
  • 【Python】变量与基本数据类型
  • Unity按键表大全
  • 第一周java。2
  • Arduino - Keypad 键盘
  • 国产芯片方案/蓝牙咖啡电子秤方案研发
  • reactjs18 中使用@reduxjs/toolkit同步异步数据的使用
  • 剧本杀小程序:助力商家发展,提高游戏体验
  • pikachu靶场 利用Rce上传一句话木马案例(工具:中国蚁剑)
  • CenterOS7安装java
  • react 重新加载子组件
  • 从零开始使用WordPress搭建个人网站并一键发布公网详细教程
  • 浅谈chrome引擎
  • 【常用知识点-Java】创建文件夹
  • 【JavaScript脚本宇宙】颜色处理神器大比拼:哪款JavaScript库最适合你?
  • 怎么录制电脑内部声音?好用的录音软件分享,看这篇就够了!
  • ios CCNSDate.m
  • Windows系统安装SSH服务结合内网穿透配置公网地址远程ssh连接
  • 虚拟机与主机的联通
  • 2024年中国网络安全市场全景图 -百度下载
  • Linux脚本自动安装 docker
  • 【计算智能】遗传算法(一):基本遗传算法(SGA)理论简介
  • win10系统让当前用户拥有管理员权限
  • Redis持久化的三种方式(RDB、AOF和混合)
  • Telnet发送get/post请求
  • PostgreSQL匹配字符串方法
  • Docker镜像加速配置
  • 【elementui】记录解决el-tree开启show-checkbox后,勾选一个叶结点后会自动折叠的现象