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使用vant中的checkbox实现全选功能
Nov 17 Vue.js
vue $router和$route的区别详解
Dec 02 Vue.js
Vue 组件注册全解析
Dec 17 Vue.js
vue element el-transfer增加拖拽功能
Jan 15 Vue.js
vue登录页实现使用cookie记住7天密码功能的方法
Feb 18 Vue.js
详解Vue.js 可拖放文本框组件的使用
Mar 03 Vue.js
vue使用v-model进行跨组件绑定的基本实现方法
Apr 28 Vue.js
Vue Element UI自定义描述列表组件
May 18 Vue.js
vue实现锚点定位功能
Jun 29 Vue.js
详解Vue slot插槽
Nov 20 Vue.js
vue项目支付功能代码详解
Feb 18 Vue.js
Vue OpenLayer 为地图绘制风场效果
Apr 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
php var_export与var_dump 输出的不同
2013/08/09 PHP
检测codeigniter脚本消耗内存情况的方法
2015/03/21 PHP
PHP智能识别收货地址信息实例
2019/01/05 PHP
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
js禁止小键盘输入数字功能代码
2011/08/01 Javascript
JS 添加千分位与去掉千分位的示例
2013/07/11 Javascript
script不刷新页面的联动前后代码
2013/09/18 Javascript
jquery ajax jsonp跨域调用实例代码
2013/12/11 Javascript
jQuery模拟点击A标记示例参考
2014/04/17 Javascript
jQuery给动态添加的元素绑定事件的方法
2015/03/09 Javascript
Bootstrap教程JS插件弹出框学习笔记分享
2016/05/17 Javascript
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
vue2 自定义动态组件所遇到的问题
2017/06/08 Javascript
ES6中Array.copyWithin()函数的用法实例详解
2017/09/16 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
浅析JavaScript异步代码优化
2019/03/18 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
2019/04/28 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
2020/02/15 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
python实现文件分组复制到不同目录的例子
2014/06/04 Python
在Python中处理字符串之ljust()方法的使用简介
2015/05/19 Python
python 实现对数据集的归一化的方法(0-1之间)
2018/07/17 Python
pycharm中成功运行图片的配置教程
2018/10/28 Python
在python中利用KNN实现对iris进行分类的方法
2018/12/11 Python
Django自定义用户登录认证示例代码
2019/06/30 Python
在vscode中启动conda虚拟环境的思路详解
2020/12/25 Python
新加坡时尚网上购物:Zalora新加坡
2016/07/26 全球购物
美国首屈一指的礼品篮供应商:GiftTree
2018/01/06 全球购物
周仰杰(JIMMY CHOO)法国官方网站:闻名世界的鞋子品牌
2019/09/27 全球购物
供货协议书范本
2014/04/22 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
医学求职信
2014/05/28 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
python实现socket简单通信的示例代码
2021/04/13 Python
OpenCV全景图像拼接的实现示例
2021/06/05 Python
使用Django框架创建项目
2022/06/10 Python