Vue3 列表自动滚动播放(表头固定、列表内容自动滚动播放)+ vue3-seamless-scroll - 附完整示例

vue3-seamless-scroll:Vue3.0 无缝滚动组件,支持Vite2.0,支持服务端打包

目前组件支持上下左右无缝滚动,单步滚动,并且支持复杂图标的无缝滚动,目前组件支持平台与Vue3.0支持平台一致。

目录

效果

 一、介绍

 1、官方文档

2、官方示例

二、准备工作

1、安装依赖包

 2、示例版本 

三、使用步骤

1、注册

        1)在main.ts/js文件中全局组件注册

        2)在单个.vue单文件局部注册

2、设置容器宽高

3、样式处理(关键点)

        1)统一表头和列表内容的宽度

        2)设置列表自动滚动播放并设置自动滚动播放速度等

        3)设置关键样式

四、完整示例

 欢迎扫描下方二维码关注VX公众号


效果

 一、介绍

 1、官方文档

vue3-seamless-scroll - npm

vue3-seamless-scroll - npmVue3.0 无缝滚动组件. Latest version: 2.0.1, last published: 2 years ago. Start using vue3-seamless-scroll in your project by running `npm i vue3-seamless-scroll`. There are 22 other projects in the npm registry using vue3-seamless-scroll.icon-default.png?t=N7T8https://www.npmjs.com/package/vue3-seamless-scroll

2、官方示例

二、准备工作

1、安装依赖包

npm install vue3-seamless-scroll --saveyarn add vue3-seamless-scroll

 2、示例版本 

"vue3-seamless-scroll": "^2.0.1",

三、使用步骤

1、注册

        1)在main.ts/js文件中全局组件注册
import { createApp } from 'vue';import vue3SeamlessScroll from 'vue3-seamless-scroll';const app = createApp(App);app.use(vue3SeamlessScroll);
        2)在单个.vue单文件局部注册
<script lang="ts" setup>
import { Vue3SeamlessScroll } from "vue3-seamless-scroll";
</script>

注:这里以局部注册为例

2、设置容器宽高

<template><div class="scroll-wrap"></div>
</template><script lang="ts" setup>
import { ref } from 'vue';
import { Vue3SeamlessScroll } from "vue3-seamless-scroll";
</script><style scoped>.scroll-wrap {width: 500px;height: 350px;overflow: hidden;}
</style>

3、样式处理(关键点)

        1)统一表头和列表内容的宽度
<div class="scroll-wrap"><div class="scroll-header"><ul class="scroll-ul"><li class="scroll-li"><span style="min-width: 80px; width: calc(100% - 180px)">标题</span><span style="width: 180px">日期</span></li></ul></div><div class="scroll-content"><vue3-seamless-scroll class="scroll-list" :list="list"><ul class="scroll-ul" v-for="(item, index) in list" :key="index"><li class="scroll-li"><span style="min-width: 80px; width: calc(100% - 180px)">{{ item.title }}</span><span style="width: 180px">{{ item.date }}</span></li></ul></vue3-seamless-scroll></div>
</div>
        2)设置列表自动滚动播放并设置自动滚动播放速度等
<div class="scroll-content"><vue3-seamless-scrollclass="scroll-list":list="alarmData"v-model="scrollFlag":hover="true":step="0.4":wheel="true":isWatch="true":limitScrollNum="6">...</vue3-seamless-scroll>
</div>
注:limitScrollNum:开启滚动的数据量,只有列表长度大于等于该值才会滚动。根据实际情况设置,在本文示例中需要设为“6”
  3)设置关键样式
.scroll-list {width: 100%;overflow: hidden;
}

注:需要滚动的列表所在容器必须设置样式 overflow: hidden;

四、完整示例

<template><div class="scroll-wrap"><div class="scroll-header"><ul class="scroll-ul"><li class="scroll-li"><span style="min-width: 80px; width: calc(100% - 180px)">标题</span><span style="width: 180px">日期</span></li></ul></div><div class="scroll-content"><vue3-seamless-scrollclass="scroll-list":list="alarmData"v-model="scrollFlag":hover="true":step="0.4":wheel="true":isWatch="true":limitScrollNum="7"><ul class="scroll-ul" v-for="(item, index) in list" :key="index"><li class="scroll-li"><span style="min-width: 80px; width: calc(100% - 180px)">{{ item.title }}</span><span style="width: 180px">{{ item.date }}</span></li></ul></vue3-seamless-scroll></div></div>
</template><script lang="ts" setup>
import { ref } from 'vue';
import { Vue3SeamlessScroll } from "vue3-seamless-scroll";const list = ref([{title: "Vue3.0 无缝滚动组件展示数据第1条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第2条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第3条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第4条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第5条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第6条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第7条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第8条",date: Date.now(),},{title: "Vue3.0 无缝滚动组件展示数据第9条",date: Date.now(),},
]);sessionStorage.setItem('num', 888)
console.log(sessionStorage.getItem('num'));</script><style scoped>
.scroll-wrap {width: 500px;height: 350px;overflow: hidden;
}
.scroll-header,
.scroll-content {width: 100%;display: flex;
}
.scroll-list {width: 100%;overflow: hidden;
}
.scroll-ul {width: 100%;display: flex;flex-direction: column;
}
.scroll-li {width: 100%;display: flex;line-height: 35px;
}
.scroll-li > span {display: flex;height: 35px;line-height: 35px;border-top: 1px solid #dcdfe6;border-left: 1px solid #dcdfe6;padding-left: 5px;overflow: hidden;
}
.scroll-li > span:last-child {border-right: 1px solid #dcdfe6;
}
.scroll-header .scroll-li {background-color: #F8F9FF;
}
.scroll-header .scroll-li > span {font-weight: bold; border-top: none;
}
.scroll-content .scroll-ul:last-child .scroll-li {border-bottom: 1px solid #dcdfe6;
}
</style>

 欢迎扫描下方二维码关注VX公众号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/391695.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯云AI代码助手评测:如何智能高效完成Go语言Web项目开发

腾讯云AI代码助手评测&#xff1a;如何智能高效完成Go语言Web项目开发 &#x1f680; 文章目录 腾讯云AI代码助手评测&#xff1a;如何智能高效完成Go语言Web项目开发 &#x1f680;背景引言开发环境介绍腾讯云AI代码助手使用实例1. 代码补全2. 技术对话3. 代码优化4. 规范代码…

(计算机网络)物理层

目录 一.基本概念 二.基本术语 三.码元 四.多路复用技术 一.基本概念 1. 2. 3. 4. 5. 6. 7. 8. 9. 二.基本术语 1. 2. 3.早期--公用的电话网传输数据&#xff0c;网络上传的是模拟信号&#xff0c;调制解调器--将数字信号转化成模拟信号&#xff0c;最后&#xff0c;调制解…

NSSCTF-GDOUCTF 2023新生赛

[GDOUCTF 2023]hate eat snake 考察&#xff1a;js代码审计 打开题目&#xff0c;发现需要坚持60秒&#xff0c;那么简单的一个思路就是修改得分的变量>60即可 办法1&#xff1a;修改变量 右键查看源代码&#xff0c;之后发现有一个snake.js的文件&#xff0c;ctrlf搜索i…

程序设计基础(c语言)_补充_1

1、编程应用双层循环输出九九乘法表 #include <stdio.h> #include <stdlib.h> int main() {int i,j;for(i1;i<9;i){for(j1;j<i;j)if(ji)printf("%d*%d%d",j,i,j*i);elseprintf("%d*%d%-2d ",j,i,j*i);printf("\n");}return 0…

DS18B20数字温度传感器操作解析

文章目录 引言特点工作原理引脚说明配置寄存器温度寄存器时序初始化时序写时序读时序 引言 DS18B20 是一种广泛使用的数字温度传感器&#xff0c;具有高精度和易用性。是Dallas Semiconductor公司&#xff08;现为Maxim Integrated公司&#xff09;生产的单总线数字温度传感器…

关爱提示器-不要久坐

关爱提示器-不要久坐 最近身体不适腰疼脖子疼的&#xff0c;去医院检查&#xff0c;大夫提示注意身体不要久坐多运动等等之类的&#xff0c;哎&#xff0c;生活所迫&#xff0c;披星戴月兢兢业业的&#xff0c;到头来还要被批判躺平不努力。哎&#xff0c;先关爱自己吧&#xf…

Java | Leetcode Java题解之第322题零钱兑换

题目&#xff1a; 题解&#xff1a; public class Solution {public int coinChange(int[] coins, int amount) {int max amount 1;int[] dp new int[amount 1];Arrays.fill(dp, max);dp[0] 0;for (int i 1; i < amount; i) {for (int j 0; j < coins.length; j)…

Dynamo修改共享参数绑定的分组——群问题整理005

Hello大家好!我是九哥~ 今天继续给大家分享一些短平快的小教程,是来自群里面的问题。 问题005:Dynamo修改共享参数绑定的分组 今天看到群里询问如何修改参数所在的分组,查了下API,项目参数是不行的,不过共享参数是允许ReInsert()的,那么就好办了。 然后在Document下…

JavaEE 第4节 线程安全问题

小贴士&#xff1a; 本节题目所述的主题其实非常的庞大&#xff0c;如果要细讲起来&#xff0c;一篇博客远远不够&#xff0c;本篇博客只会每个方面的内容做一个简要描述&#xff0c;详细的内容在后续同专栏博客中都会涉及到的&#xff0c;如果有需要可以一步到本专栏的其他博客…

python运行js之execjs基本使用

python运行js之execjs基本使用 现在大部分网站都使用JS加密和JS加载的情况&#xff0c;数据并不能直接被抓取出来&#xff0c;这时候就需要使用第三方类库来执行JS语句。 官网&#xff1a;https://pypi.org/project/PyExecJS/ 使用前提&#xff1a;电脑需要安装 Node.js 一、安…

最新口型同步技术EchoMimic部署

EchoMimic是由蚂蚁集团推出的一个 AI 驱动的口型同步技术项目&#xff0c;能够通过人像面部特征和音频来帮助人物“对口型”&#xff0c;生成逼真的动态肖像视频。 EchoMimic的技术亮点在于其创新的动画生成方法&#xff0c;它不仅能够通过音频和面部关键点单独驱动图像动画&a…

【星闪开发连载】WS63E 星闪开发板和hi3861开发板的对比

此次星闪开发者体验官活动使用的开发板都是NearLink_DK_WS63E开发板&#xff0c;它和NearLink_DK_WS63开发板的区别在于具有雷达感知功能。从开发板的照片也可以看到WS63E有一个雷达天线接口。 我们把WS63E开发板和hi3861开发板的功能做了简单的对比&#xff0c;见下表。 参数…

用户看广告获取密码访问网页内容流量主模式源码

简介&#xff1a; 全开源付费进群流量主模式&#xff0c;用户看广告获取密码访问网页内容&#xff0c;网站生成内容&#xff0c;用户需要浏览内容跳转至小程序&#xff0c;观看广告后获取密码&#xff0c;输入密码查看网页内容。 与之前得9.9付费进群区别就是内容体现在了网页…

iPhone苹果手机Safari浏览器怎么收藏网页?

iPhone苹果手机Safari浏览器怎么收藏网页? 1、iPhone苹果手机上找到并打开Safari浏览器&#xff0c;并访问要收藏的网页&#xff1b; 2、打开网页后&#xff0c;点击导航上的更多功能&#xff1b; 3、在更多里&#xff0c;找到并点击添加到个人收藏&#xff0c;完成储存即可添…

JavaSE面试篇章——一文干破Java集合

文章目录 Java集合——一文干破集合一、集合的理解和好处1.1 数组1.2 集合 二、集合的框架体系三、Collection接口和常用方法3.1 Collection接口实现类的特点3.2 Collection接口遍历元素方式1-使用Iterator(迭代器)3.2.1 基本介绍3.2.2 迭代器的执行原理3.2.3 Iterator接口的方…

java基础 之 equals和==的区别

文章目录 浅谈“”特点比较基本类型比较引用类型 浅谈“equals”背景和使用重写equals自定义类为什么需要重写equals方法 总结附录代码及文章推荐 前言&#xff1a; 1、8大基本数据类型&#xff0c;它们的值直接代表了某种数据&#xff0c;不是对象的实例&#xff0c;不能使用n…

关于企微群聊天工具功能的开发---PHP+JS+CSS+layui (手把手教学)

文章目录 前言准备工作PHP代码示例前端代码示例 主要是js踩的小坑&笔记最终达成的效果总结 前言 公司要求开发企微群聊天工具。首先一个客户一个群&#xff0c;其余群成员都是公司销售、设计师、工长、售后等人员。要求开发一个群聊天工具&#xff0c;工长点击进来以后就可…

ReentrantLock源码分析

文章目录 一、AQS1、state属性2、等待队列3、条件变量 二、ReentrantLock1、非公平锁实现原理1.1 获取锁1.2 释放锁1.3 可重入原理1.4 可打断原理不可打断可打断 1.5 公平锁实现原理1.6 条件变量原理awaitsignal 一、AQS AQS全称是 AbstractQueuedSynchronizer&#xff0c;是阻…

Python面试宝典第27题:全排列

题目 给定一个不含重复数字的数组nums&#xff0c;返回其所有可能的全排列 。备注&#xff1a;可以按任意顺序返回答案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]] 示例 2&#xff1a; 输…

FPGA开发——数码管的使用(二)

一、概述 在上一篇文章中我们针对单个数码管的静态显示和动态显示进行了一个设计和实现&#xff0c;这篇文章中我们针对多个数码管同时显示进行一个设计。这里和上一篇文章唯一不同的是就是数码管位选进行了一个改变&#xff0c;原来是单个数码管的显示&#xff0c;所以位选就直…