当前位置: 首页 > news >正文

微信小程序一款不错的文字动画

效果图

请添加图片描述

.js

Page({data: {list:[],animation:['text-left','text-right','text-top','text-bottom'],text:[['春眠不觉晓,处处闻啼鸟。','夜来风雨声,花落知多少。'  ],['床前明月光,疑是地上霜。','举头望明月,低头思故乡。'],['千山鸟飞绝,万径人踪灭。','孤舟蓑笠翁,独钓寒江雪。']],number:-1,},randomNum(){return Math.floor(Math.random() * 4);	},createText(){this.setData({list:[]})const text = this.data.textthis.data.number++if(this.data.number >= text.length){this.data.number = 0}const o = text[this.data.number]const arr = []for(let i = 0;i < o.length;i++){arr[i] = []for(let k in o[i]){arr[i].push({random:this.randomNum(),text:o[i][k]})}}this.setData({list:arr})},onLoad(){this.createText()}
})

.wxml

<view class="container"><view wx:for="{{list}}" wx:key="index" class="box">{{item.text}}<view wx:for="{{item}}" wx:key="*this" class="text-animated-word list"style="--name:{{animation[item.random]}};" >{{item.text}}</view></view>
</view>
<button bind:tap="createText">下一首</button>

.wxss

.container{width: 70%;margin: 200rpx 15%;font-size: 32rpx;color: red;
}
.box{display: flex;flex-wrap:wrap;width: max-content;margin: 0 auto;
}
.list{margin: 4rpx;
}
.text-animated-word{animation-name: var(--name);animation-duration: 0.8s;
}
@keyframes text-top{from{opacity:0;transform:translate3d(0,-100vh,0);}to{opacity:1;transform:translateZ(0);}
}
@keyframes text-bottom{from{opacity:0;transform:translate3d(0,100vh,0);}to{opacity:1;transform:translateZ(0);}
}
@keyframes text-left{from{opacity:0;transform:translate3d(-100vw,0,0);}to{opacity:1;transform:translateZ(0);}
}
@keyframes text-right{from{opacity:0;transform:translate3d(100vw,0,0);}to{opacity:1;transform:translateZ(0);}
}

遇到问题可以看我主页加我Q,很少看博客,对你有帮助别忘记点赞收藏。

http://www.lryc.cn/news/571270.html

相关文章:

  • 密度泛函涨落理论在医疗人工智能中的应用与展望:多尺度物理驱动智能的新范式
  • Spring Boot + MyBatis + Redis Vue3 Docker + Kubernetes + Nginx
  • OpenCV 视频文件读取
  • Linux核心文件(core file)详解
  • Vue 3 常用响应式数据类型详解:ref、reactive、toRef 和 toRefs
  • 【Linux系统】初识虚拟地址空间
  • Java微服务-新建demo
  • UTF-8 发展历史以及与 UTF-16/GBK 之间的差异
  • AI办公提效,Deepseek + wps生成ppt
  • 网络安全之任意文件读取利用
  • 如何在应用中实现地图关键字搜索和标记聚合功能?
  • 图扑软件 | 3D 场景视频嵌入应用
  • 【pytest进阶】Pytest之conftest详解
  • Kafka网络模块全链路源码深度剖析与设计哲学解读
  • RAG 架构地基工程-Retrieval 模块的系统设计分享
  • 测试:网络协议超级详解
  • 国产数据库KingbaseES零基础实战:Oracle兼容功能从入门到精通
  • 探索KingbaseES在线体验平台:国产数据库新体验
  • 力扣Hot100每日N题(19~24)
  • 性能测试|数据说话!在SimForge平台上用OpenRadioss进行汽车碰撞仿真,究竟多省时?
  • 页面配置文件pages.json和小程序配置
  • 金仓数据库在线体验平台:开启国产数据库云端探索之旅
  • 【万元大奖】2025年第二届教育信息技术应用创新大赛——操作系统技能创新挑战赛 开始报名啦!!!
  • 资产结构分析怎么做?以固定资产和存货为例
  • LLM大模型系列(十):深度解析 Prefill-Decode 分离式部署架构
  • 红队攻防渗透技术实战流程:信息打点-Web应用源码泄漏开源闭源指纹识别GITSVNDS备份
  • 项目的难点
  • 接雨水 - 困难
  • Java 常用类 Time API:现代时间处理的艺术
  • GPU算力应用迈出关键一步:DPIN与南洋生物科技合作落地