当前位置:首页 > 科技  > 软件

神奇的进度条!水缸进度动画效果怎么实现的?

来源: 责编: 时间:2024-07-25 08:58:56 713观看
导读最近看到一个非常有趣的动画效果:水波进度动画,想了一下实现思路,分享给大家~效果如下图片图片基本组件代码先把最基础的组件代码样式写出来,其实无非就是四个部分:1、圆形水缸2、水波2、百分比数字3、进度条我们先把圆形

最近看到一个非常有趣的动画效果:水波进度动画,想了一下实现思路,分享给大家~NzE28资讯网——每日最新资讯28at.com

效果如下NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

基本组件代码

先把最基础的组件代码样式写出来,其实无非就是四个部分:NzE28资讯网——每日最新资讯28at.com

1、圆形水缸NzE28资讯网——每日最新资讯28at.com

2、水波NzE28资讯网——每日最新资讯28at.com

2、百分比数字NzE28资讯网——每日最新资讯28at.com

3、进度条NzE28资讯网——每日最新资讯28at.com

我们先把圆形水缸、百分比数字、进度条画出来,水波待会再画NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

可以看到初步效果已经出来了!NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

水波效果

最重点的就是水波,其实这个水波就是个障眼法罢了,我画张图你们就懂了,其实就是一个圆角正方形,一直在旋转和上升下降,让用户有一种水波的视觉感~NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

所以我们可以画一个圆角正方形,并且让他一直旋转即可NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

并且我们要让这个水波效果,随着百分比的增加而上升,随着百分比的减少而下降,所以得监听百分比NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

现在可以发现已经有水波效果了!NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

但是感觉水溢出来了,所以需要给水缸设置一下溢出隐藏!NzE28资讯网——每日最新资讯28at.com

图片图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

最终实现效果:NzE28资讯网——每日最新资讯28at.com

图片NzE28资讯网——每日最新资讯28at.com

NzE28资讯网——每日最新资讯28at.com

完整代码

<template>  <div class="wave-container">    <!-- 水缸 -->    <div class="main">      <!-- 百分比数字 -->      <div class="main-number">{{ percent }}</div>      <!-- 水波效果 -->      <div ref="wave" class="wave"></div>    </div>    <!-- 进度条 -->    <Slider v-model:value="percent" class="percent-bar" :tipFormatter="null" />  </div></template><script setup lang="ts">import { ref, watch } from 'vue';import { Slider } from 'ant-design-vue';const percent = ref(0);const wave = ref<HTMLDivElement | null>(null);// 监听百分比,计算 topwatch(  percent,  v => {    const waveEle = wave.value;    if (waveEle) {      waveEle.style.top = `${200 * (1 - v / 100)}px`;    }  },  {    immediate: true,  },);</script><style scoped lang="less">.wave-container {  display: flex;  flex-direction: column;  align-items: center;  .main {    position: relative;    width: 200px;    height: 200px;    border-radius: 50%;    background: #fff;    border: #fff solid 5px;    display: flex;    justify-content: center;    align-items: center;    // 增加样式隐藏溢出    overflow: hidden;    .main-number {      font-size: 100px;      z-index: 1;      user-select: none;    }  }  @keyframes rotateAnimation {    from {      transform: rotate(0deg);    }    to {      transform: rotate(360deg);    }  }  .wave {    position: absolute;    top: 200px;    width: 400px;    height: 400px;    background: rgb(168, 168, 231);    border-radius: 40%;    animation: rotateAnimation 2s linear infinite;  }  .percent-bar {    width: 200px;    background: #fff;  }}</style>

NzE28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-103361-0.html神奇的进度条!水缸进度动画效果怎么实现的?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: C# 开发技巧:轻松监控方法执行耗时

下一篇: WPF中轻松操控GIF动画:WpfAnimatedGif库详解

标签:
  • 热门焦点
  • K60至尊版狂暴引擎2.0加持:超177万跑分斩获性能第一

    Redmi的后性能时代战略发布会今天下午如期举办,在本次发布会上,Redmi公布了多项关于和联发科的深度合作,以及新机K60 Ultra在软件和硬件方面的特性,例如:“K60 至尊版,双芯旗舰
  • JavaScript 混淆及反混淆代码工具

    介绍在我们开始学习反混淆之前,我们首先要了解一下代码混淆。如果不了解代码是如何混淆的,我们可能无法成功对代码进行反混淆,尤其是使用自定义混淆器对其进行混淆时。什么是混
  • 2023年,我眼中的字节跳动

    此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的&ldquo;头腾
  • Temu起诉SHEIN,跨境电商战事升级

    来源 | 伯虎财经(bohuFN)作者 | 陈平安日前据外媒报道,拼多多旗下跨境电商平台Temu正对竞争对手SHEIN提起新诉讼,诉状称Shein&ldquo;利用市场支配力量强迫服装厂商与之签订独家
  • 破圈是B站头上的紧箍咒

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之每年的暑期档都少不了瞄准追剧女孩们的古偶剧集,2021年有优酷的《山河令》,2022年有爱奇艺的《苍兰诀》,今年却轮到小破站抓住了追
  • 2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • iQOO Neo8 Pro抢先上架:首发天玑9200+ 安卓性能之王

    经过了一段时间的密集爆料,昨日iQOO官方如期对外宣布:将于5月23日推出全新的iQOO Neo8系列新品,官方称这是一款拥有旗舰级性能调校的作品。随着发布时
  • iQOO Neo8 Pro真机谍照曝光:天玑9200+和V1+旗舰双芯加持

    去年10月,iQOO推出了iQOO Neo7系列机型,不仅搭载了天玑9000+,而且是同价位唯一一款天玑9000+直屏旗舰,一经上市便受到了用户的广泛关注。在时隔半年后,
  • 华为举行春季智慧办公新品发布会 首次推出电子墨水屏平板

    北京时间2月27日晚,华为在巴塞罗那举行春季智慧办公新品发布会,在海外市场推出之前已经在中国市场上市的笔记本、平板、激光打印机等办公产品,并首次推出搭载
Top