本文实例为大家分享了vue+animation实现翻页动画展示的具体代码,供大家参考,具体内容如下
前端在做数据展示的时候,可能提留页面时间较长,导致数据不能及时更新,你可以定时更新,也可以做一个假数据 给用户视觉上的体验,接下来就是第二种,假数据,它用了C3 animation 实现了一个翻页动画。
第一种是单独运动
<template> <div> <div> <ul> <li v-for="(item,i) in NumberList" :key="i" ><a :class="[item.isMove ">{{item.num}}</a></li> </ul> </div> </div> </template> <script> export default { data(){ return { NumberList:'', Number:108847, } }, mounted(){ let arr = String(this.Number).split('') this.NumberList=[] arr.forEach(item => { const model = {}; model.isMove = false; model.num = item; this.NumberList.push(model); }); setInterval(() =>{ this.Number=this.Number+1; let data = String(this.Number); let arr = data.split(""); arr.forEach((item, index) => { if (item !== this.NumberList[index].num) { this.NumberList[index].isMove = true } }); }, 10000) }, watch: { Number() { setTimeout(() =>{ let data = String(this.Number); let arr = data.split(""); this.NumberList.forEach((item, index) => { this.NumberList[index].num = arr[index]; }); }, 500); setTimeout(() =>{ this.NumberList.forEach((item, index) => { this.NumberList[index].isMove = false }); }, 1000); } }, methods:{ } } </script> <style lang="" scoped> h1{ text-align:center; } ul{ display: flex; } li{ list-style: none; width:50px;height:80px; background: red; margin-right: 10px; text-align: center; line-height: 80px; font-size:20px; color:#ffffff; position: relative; } a { position: absolute; top: 3px; color: #ffffff; } .move-an { animation:mymove 1s infinite linear; -webkit-animation:mymove 1s infinite linear; } @keyframes mymove { 0% {top: 3px;} 25% {top: -40px;} 48% {top: -80px;} 49% {top: -80px; opacity: 0} 50% {top: 80px;} 51% {top: 80px;opacity: 1; } 100% {top: 3px;} } </style>
第二种是整体运动 0-9循环一边
<template> <div class="main"> <div v-for="(item,i) in NumberList" class="move-num" :key="i"> <div> <div style="visibility:hidden;position: static"> <span v-for="(list, i) in item.num" :key="i" class="num-move">{{list}}</span> </div> <a :class="[isMove === true "> <span v-for="(list, i) in item.num" :key="i" class="num-move">{{list}}</span> </a> </div> </div> </div> </template> <script> export default { data(){ return { isMove:false, NumberList:[], Number:108847, numModels: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], } }, mounted(){ this.handdleDate() setInterval(() => { this.handdleDate() }, 10000) }, methods:{ handdleDate(){ let arr = String(this.Number).split('') this.NumberList=[] arr.forEach(item => { const model = {} const baseArr = JSON.parse(JSON.stringify(this.numModels)) model.isMove = false; for (let i = 0; i < parseInt(item) + 1; i++) { baseArr.push(i) } model.num = baseArr; this.NumberList.push(model); this.isMove = true; setTimeout(() => { this.isMove = false }, 3000) }); } } } </script> <style lang="" scoped> .main{ display: flex; } .move-num{ width:30px;height:40px; background:red; overflow: hidden; margin-right:10px; line-height: 40px; color:#fff; position: relative; overflow: hidden; } .move-num div { position: absolute; width: 100%; height: auto; } .move-num div a { color: #ffffff; display: block; position: absolute; left: 10px; bottom: calc(100% - 45px); } .num-move { width: 100%; display: block; margin: 3px 0; } .move-an { animation:mymove 3s infinite linear forwards; -webkit-animation:mymove 3s infinite linear forwards; } .num-move { width: 100%; display: block; margin: 3px 0; } @keyframes mymove { 0% {bottom: 3px;} 100% {bottom: calc(100% - 40px)} } </style>
关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 黄乙玲1988-无稳定的爱心肝乱糟糟[日本东芝1M版][WAV+CUE]
- 群星《我们的歌第六季 第3期》[320K/MP3][70.68MB]
- 群星《我们的歌第六季 第3期》[FLAC/分轨][369.48MB]
- 群星《燃!沙排少女 影视原声带》[320K/MP3][175.61MB]
- 乱斗海盗瞎6胜卡组推荐一览 深暗领域乱斗海盗瞎卡组分享
- 炉石传说乱斗6胜卡组分享一览 深暗领域乱斗6胜卡组代码推荐
- 炉石传说乱斗本周卡组合集 乱斗模式卡组最新推荐
- 佟妍.2015-七窍玲珑心【万马旦】【WAV+CUE】
- 叶振棠陈晓慧.1986-龙的心·俘虏你(2006复黑限量版)【永恒】【WAV+CUE】
- 陈慧琳.1998-爱我不爱(国)【福茂】【WAV+CUE】
- 咪咕快游豪礼放送,百元京东卡、海量欢乐豆就在咪咕咪粉节!
- 双11百吋大屏焕新“热”,海信AI画质电视成最大赢家
- 海信电视E8N Ultra:真正的百吋,不止是大!
- 曾庆瑜1990-曾庆瑜历年精选[派森][WAV+CUE]
- 叶玉卿1999-深情之选[飞图][WAV+CUE]