Vue实现一种简单的无限循环滚动动画的示例


Posted in Vue.js onJanuary 10, 2021

本文主要介绍了Vue实现一种简单的无限循环滚动动画的示例,分享给大家,具体如下:

先看实现效果:

Vue实现一种简单的无限循环滚动动画的示例

这种类似轮播的效果,通常可以使用轮播的方案解决,只不过相对于我要分享的方案来说,轮播实现还是要复杂些的。
Vue提供了一种过渡动画transition-group,这里我便是利用的这个效果

// template
<transition-group name="list-complete" tag="div">
 <div
  v-for="v in items"
  :key="v.ix"
  class="item list-complete-item pro-panel"
  :style="{ height: sh }"
 >
  // 内容部分 
 </div>
</transition-group>

//scss
.list-complete-item {
 transition: all 1s;
}
.list-complete-leave-to {
 opacity: 0;
 transform: translateY(-80px);
}
.list-complete-leave-active {
 position: absolute;
}

这样,动画效果就出来了,但是却不能自动执行,所以我利用了setInterval:

mounted() {
 let count = 4000
 if (!this.timer) {
  this.timer = setInterval(() => {
   if (this.items.length > 1) {
    this.remove()
    this.$nextTick().then(() => {
     this.add()
    })
   }
  }, count)
 }
},
methods: {
 add: function() {
  if (this.items && this.items.length) {
   const item = { ...this.removeitem[0] }
   item.ix = this.nextNum++
   this.items.push(item)
  }
 },
 remove: function() {
  this.removeitem = this.items.splice(0, 1)
 }
}

如比,效果得以实现,是不是更简单点。顺带提一下,我这边实现的效果是单条滚动,就像新闻滚动那样,所以视图窗口只能看到一条数据,你也可以不这样限制,那么就能显示整个列表了,不过每次还是只有单条数据的消失效果。

PS:动态渲染图片可以使用这种方式

<img
 :src="require(`@/assets/imgs/icons/${somevar}.png`)"
>

当然,如果有不同的意见,欢迎留言交流!

到此这篇关于Vue实现一种简单的无限循环滚动动画的示例的文章就介绍到这了,更多相关Vue 无限滚动动画内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木! 

Vue.js 相关文章推荐
vue中echarts的用法及与elementui-select的协同绑定操作
Nov 17 Vue.js
vue 插槽简介及使用示例
Nov 19 Vue.js
Vue+element-ui添加自定义右键菜单的方法示例
Dec 08 Vue.js
vue中父子组件的参数传递和应用示例
Jan 04 Vue.js
如何在vue 中使用柱状图 并自修改配置
Jan 21 Vue.js
vue 计算属性和侦听器的使用小结
Jan 25 Vue.js
Vue3.0中Ref与Reactive的区别示例详析
Jul 07 Vue.js
Vue的列表之渲染,排序,过滤详解
Feb 24 Vue.js
vue实现移动端div拖动效果
Mar 03 Vue.js
Vue中使用import进行路由懒加载的原理分析
Apr 01 Vue.js
Vue组件化(ref,props, mixin,.插件)详解
May 15 Vue.js
Vue Element plus使用方法梳理
Dec 24 Vue.js
基于vuex实现购物车功能
Jan 10 #Vue.js
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
Jan 08 #Vue.js
vue-quill-editor插入图片路径太长问题解决方法
Jan 08 #Vue.js
vue编写简单的购物车功能
Jan 08 #Vue.js
解决vue使用vant轮播组件swipe + flex时文字抖动问题
Jan 07 #Vue.js
vuex的使用和简易实现
Jan 07 #Vue.js
vue watch监控对象的简单方法示例
Jan 07 #Vue.js
You might like
Notice: Undefined index: page in E:\PHP\test.php on line 14
2010/11/02 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
javascript实现的动态文字变换
2007/07/28 Javascript
jQuery中与toggleClass等价的程序段 以及未来学习的方向
2010/03/18 Javascript
js获取class的所有元素
2013/03/28 Javascript
jquery选择器、属性设置用法经验总结
2013/09/08 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
深入理解JS中的Function.prototype.bind()方法
2016/10/11 Javascript
详解Vue快速零配置的打包工具——parcel
2018/01/16 Javascript
Vue中使用Sortable的示例代码
2018/04/07 Javascript
JS实现方形抽奖效果
2018/08/27 Javascript
node实现分片下载的示例代码
2018/10/17 Javascript
详解如何使用webpack打包多页jquery项目
2019/02/01 jQuery
了解JavaScript表单操作和表单域
2019/05/27 Javascript
vue 如何从单页应用改造成多页应用
2020/10/23 Javascript
JS常用跨域方法实现原理解析
2020/12/09 Javascript
[01:13]2015国际邀请赛线下观战现场
2015/08/08 DOTA
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
[34:08]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS EG
2018/03/30 DOTA
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
Python通过Manager方式实现多个无关联进程共享数据的实现
2019/11/07 Python
django filter过滤器实现显示某个类型指定字段不同值方式
2020/07/16 Python
OpenCV灰度化之后图片为绿色的解决
2020/12/01 Python
加拿大约会网站:EliteSingles.ca
2018/01/12 全球购物
给老师的检讨书
2014/02/11 职场文书
安全生产活动月方案
2014/03/09 职场文书
土地转让协议书
2014/04/15 职场文书
初中作文评语大全
2014/04/23 职场文书
教师考核评语
2014/04/28 职场文书
教师节感恩老师演讲稿
2014/08/28 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
上班时间打瞌睡检讨书
2014/09/26 职场文书
2019职场单身人才调研报告:互联网行业单身比例最高
2019/08/07 职场文书
Python+Appium实现自动抢微信红包
2021/05/21 Python