vue文字间歇无缝向上滚动
2024-08-30 14:33:41
公司的管理系统中有“文字间歇无缝向上滚动”的需求,现在这种需求基本在项目开发中已经消失了,没什么新颖的,但架不住公司高层喜欢这种玩意儿,所以,作为开发人员,即使你有一百个不乐意,谁让是人家给你发工资呢!!!
其实,这种用在vue项目中的需求跟原生js的实现方法基本一致,且实现的方法有多种,今天就单拎出来一种实现方法吧:
<div class="scroll-up" ref="scroll">
<ul>
<li v-for="item in scrollData" :key="item.id"><router-link to="">{{item.title}}</router-link></li>
</ul>
</div>
export default {
data() {
return {
scrollData: [
{ id: 1, title: '架不住公司高层喜欢这种玩意儿' },
{ id: 2, title: '用在vue项目中的需求跟原生js的实现方法' },
{ id: 3, title: '文字间歇无缝向上滚动' },
{ id: 4, title: '即使你有一百个不乐意,谁让是人家给你发工资呢' },
{ id: 5, title: '今天就单拎出来一种实现方法' },
],
scrollArea: '',
speed: 20,
timer: null,
delay: 3000,
liHeight: '',
};
},
mounted() {
this.$nextTick(() => {
this.scrollArea = this.$refs.scroll;
let li = this.scrollArea.getElementsByTagName("li");
this.liHeight = li[0].offsetHeight;
this.scrollArea.scrollTop = 0;
this.scrollArea.innerHTML += this.scrollArea.innerHTML;
this. scrollData.length > 1 && setTimeout(this.startScroll, this.delay);
})
},
methods: {
startScroll(){
this.timer = setInterval(this.scrollUp, this.speed);
this.scrollArea.scrollTop++;
},
scrollUp(){
if(this.scrollArea.scrollTop % this.liHeight == 0){
clearInterval(this.timer);
setTimeout(this.startScroll, this.delay);
}else{
this.scrollArea.scrollTop++;
if(this.scrollArea.scrollTop >= this.scrollArea.scrollHeight / 2){
this.scrollArea.scrollTop = 0;
}
}
},
}
}
<style scoped>
.scroll-up{height:50px;line-height:50px;overflow:hidden;}
</style>
就酱!
最新文章
- 基于JQuery实现的文本框自动填充功能
- Hadoop第1~2周练习—Hadoop1.X和2.X安装
- uboot启动流程
- C#MongoDB 分页查询的方法及性能
- 实用lsof常用命令行
- JQuery中的表单验证及相关的内容
- Kali Linux常用服务配置教程安装及配置DHCP服务
- 转载 * jQuery实现动态分割div—通过拖动分隔栏实现上下、左右动态改变左右、上下两个相邻div的大小
- 获取数值型数组中大于60的元素个数,给数值型数组中不足60分的加20分。(数组,for循环,if条件判断语句)
- CentOS6 YUM安装MariaDB10.3.10
- SQLServer 2008R2 清理日志文件
- 用到临时表空间的几种SQL
- backdoor-factory
- Java反射1——扫描某个包下的所有类
- 15 int *ptr= (int *)(&;a+1)跨了整个数组长度
- 百度网盘下载器 PanDownload v2.0
- P4838 P哥破解密码
- 专业分析docker的分层存储技术
- C# List的深复制
- (zxing.net)一维码EAN 13的简介、实现与解码
热门文章
- windows下检出项目和提交项目
- HTML静态网页--图片热点
- tp5 select出来数据集(对象)转成数组
- springmvc 多文件/文件夹上传 下载
- Java发送邮件Demo
- requires php ~7.1 ->; your PHP version (7.0.18) does not satisfy that requirement
- Educational Codeforces Round 54 (Rated for Div. 2) D Edge Deletion (SPFA + bfs)
- dotnet 使用 GC.GetAllocatedBytesForCurrentThread 获取当前线程分配过的内存大小
- linux 基于 jiffy 的超时
- python写的有声小说爬虫