CSS、JavaScript实现进度条效果HTML

news2025/2/6 9:45:07

CSS、JavaScript实现进度条效果HTML

效果图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>ProgressBar</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    body {
      position: relative;
    }

    .container {
      max-width: 600px;
      margin: 0 auto;
      text-align: center;
      margin-top: 50px;
    }

    #progress {
      position: relative;
      width: 100%;
      height: 30px;
      /* background: rgb(42, 138, 248); */
      background-image: linear-gradient(110.6deg, rgb(179, 157, 219) 7%, rgb(150, 159, 222) 47.7%, rgb(24, 255, 255) 100.6%);
      /* background: linear-gradient(111.4deg, rgb(238, 113, 113) 1%, rgb(246, 215, 148) 58%); */
      border-radius: 10px;
    }

    #bar {
      width: 0%;
      height: 30px;
      /* margin-top: 1px; */
      /* background: purple; */
      /* background-image: linear-gradient(to right, #e66465, #9198e5); */
      background: linear-gradient(to right, #9fe1fa, #f4edc9);
      border-radius: 10px;
    }

    #text-progress {
      position: absolute;
      right: 2%;
      top: 0;
      color: #FFFFFF;
      height: 30px;
      line-height: 30px;
    }

    .btn {
      background: #3860FF;
      border: none;
      line-height: 32px;
      height: 32px;
      width: 80px;
      text-align: center;
      color: #FFFFFF;
      font-size: 14px;
      border-radius: 6px;

      position: absolute;
      left: calc(50% - 40px);
      margin-top: 40px;
      cursor: pointer;
    }

    .btn:hover {
      opacity: 0.6;
      transition: all 0.6s;
    }

    .reset {
      background: #ff9100;
    }

    .stop {
      background: #ff2d2d;
    }
  </style>

</head>

<body>
  <div class="container">
    <div id="progress">
      <div id="bar"></div>
      <h3 id="text-progress">0%</h3>
    </div>
  </div>
  <input class="btn" type="button" id="btn" value="点击开始" onclick="action()">
</body>
<script>
  var obj = 0;
  var iSpeed = 0;
  var btnVal = document.getElementById('btn');

  function action() {
    if (obj == 0 && iSpeed < 100) {
      obj = setInterval(function () {
        iSpeed += 1;
        if (iSpeed >= 100) {    // 设置达到多少进度后停止
          clearInterval(obj);
          btnVal.value = '点击重置';
          btnVal.setAttribute('class', 'btn reset');
        }
        bar.style.width = iSpeed + '%';
        document.getElementById('text-progress').innerHTML = iSpeed + '%';
      }, 100);    // 1s后函数执行一次

      btnVal.value = '点击停止';
      btnVal.setAttribute('class', 'btn stop');
    } else if (iSpeed >= 100) {
      clearInterval(obj);
      obj = 0;
      iSpeed = 0;
      obj = setInterval(function () {
        iSpeed += 1;
        if (iSpeed >= 100) {    // 设置达到多少进度后停止
          clearInterval(obj);
        }
        bar.style.width = iSpeed + '%';
        document.getElementById('text-progress').innerHTML = iSpeed + '%';
      }, 100);

      btnVal.value = '点击停止';
      btnVal.setAttribute('class', 'btn stop');
    } else {
      clearInterval(obj);
      obj = 0;
      btnVal.value = '点击开始';
      btnVal.setAttribute('class', 'btn');
    }
  }
</script>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1336762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【HTML5】第2章 HTML5标签和属性

学习目标 掌握文本控制标签的用法&#xff0c;能够使用文本控制标签设置文本样式。 掌握图像标签的用法&#xff0c;能够使用图像标签在网页中嵌入图片。 掌握超链接标签的用法&#xff0c;能够使用超链接实现页面的跳转。 掌握列表标签的用法&#xff0c;能够使用列表标签设…

AMEYA360:思瑞浦发布全新并联基准芯片—:TPR43x系列产品

聚焦高性能模拟芯片和嵌入式处理器的半导体公司——思瑞浦(3PEAK, 股票代码&#xff1a;688536)推出全新并联基准芯片TPR433/TPR434。 TPR433/TPR434基于BCD工艺&#xff0c;电压精度0.5%25C&#xff0c;可广泛应用于电源、照明、工业设备等领域。 TPR433/434产品特性 *通过外部…

互联网加竞赛 YOLOv7 目标检测网络解读

文章目录 0 前言1 yolov7的整体结构2 关键点 - backbone关键点 - head3 训练4 使用效果5 最后 0 前言 世界变化太快&#xff0c;YOLOv6还没用熟YOLOv7就来了&#xff0c;如果有同学的毕设项目想用上最新的技术&#xff0c;不妨看看学长的这篇文章&#xff0c;学长带大家简单的…

右值引用和移动语义以及C++11新增的类功能

正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 右值引用和左值引用 传统的C语法中就有引用的语法&#xff0c;而C11中新增了的右值引用语法特…

移动端防截屏录屏技术在百度账户系统实践

作者 | Seven 导读 在移动端应用的开发过程中&#xff0c;保护用户隐私和应用内敏感信息安全是一个不可忽视的课题。随着诈骗手段的升级&#xff0c;“共享屏幕”被诈骗分子频频使用&#xff0c;因为密码被泄露而导致受害者财物受损的事情层出不穷。只要开启了“共享屏幕”–本…

vue3使用Cascader联级选择器的懒加载+回显

效果图 页面代码 // separator是改变文字链接的方式&#xff0c; <el-cascaderseparator"-"v-model"currentRegionList":props"DeptRegionList":options"getRegionList"change"handleRegionListFun"ref"deptRegio…

Java——Windows系统怎么查看某个端口被占用和杀死进程解除占用,看这一篇就够了!!!

Windows系统端口占用 1. netstat -ano2. 查看某端口占用的PID3. tasklist|findstr "PID"4. 解除端口占用 总结 本篇文章介绍一下windows系统中怎么查看某个端口被占用以及如何解除占用。 1. netstat -ano 作用&#xff1a;查看系统中所有端口的占用情况 可以看到本…

面对勒索,金融机构该怎么办?

就在近期&#xff0c;某大行美国子公司被勒索软件攻击&#xff0c;使得部分交易系统中断&#xff0c;该行也在网站确认遭受了勒索软件攻击。这再次引发了金融机构对勒索软件的警惕与担忧&#xff0c;也凸显了一个重要的安全问题&#xff1a;犯罪分子不仅能窃取财产&#xff0c;…

MessageBox和HubSpot:数字化时代综合营销引擎

在数字时代&#xff0c;社交媒体已经成为企业与客户互动的重要平台。然而&#xff0c;随着信息的爆炸性增长&#xff0c;有效管理社交互动变得愈发具有挑战性。企业需要在海量信息中找到并回应关键的用户消息&#xff0c;这正是数字时代社交互动面临的主要挑战。为了解决这一问…

搭建Nginx文件下载站点

一、下载Nginx 首先&#xff0c;确保你的服务器上已经安装了Nginx&#xff0c;使用编译安装&#xff0c;下载最新版Nginx。 wget https://nginx.org/download/nginx-1.25.3.tar.gz tar -xf nginx-1.25.3.tar.gz二、安装Fancyindex和Nginx-Fancyindex-Theme模块 # 下载Fancyin…

k8s中的整体架构 ,pod含义,服务类型,网络通讯等

k8s中的整体架构 &#xff0c;pod含义&#xff0c;服务类型&#xff0c;网络通讯等 k8s整体架构pod内部和pod之间的通讯k8s的组件 k8s整体架构 上图中&#xff0c;较大的红框是k8s中的master节点&#xff0c;负责接受请求&#xff0c;调度任务&#xff0c;管理节点等&#xff0…

【网络奇缘】——奈氏准则和香农定理从理论到实践一站式服务|计算机网络

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 失真 - 信号的变化 影响信号失真的因素&#xff1a; ​编辑 失真的一种现象&#xff1a;码间…

推广主要指标及定义

推广主要指标以直通车为例解释&#xff0c;如图所示 1.展示量&#xff1a;当消费者搜索某个词&#xff0c;推广计划在天猫直通车展示位上被买家看到的次数&#xff08;去掉被消费者快进划过、主图未完金展现等情况产生的曝光)&#xff1b; 2.点击量&#xff1a;消费者看到广告…

iPad绘画之旅:从小白到文创手账设计的萌系简笔画探索

&#x1f482; 个人网站:【 海拥】【神级代码资源网站】【办公神器】&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交流的小伙伴&#xff0c;请点击【全栈技术交流群】 iPad的出现&#xff0c;不仅改变了我们对电子设…

[足式机器人]Part4 南科大高等机器人控制课 CH11 Bascis of Optimization

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;CLEAR_LAB 笔者带更新-运动学 课程主讲教师&#xff1a; Prof. Wei Zhang 课程链接 &#xff1a; https://www.wzhanglab.site/teaching/mee-5114-advanced-control-for-robotics/ 南科大高等机器人控制课 Ch11 Bascis o…

QT小技巧 - 使用QMovie进行gif切帧

简介 使用QMovie 将 gif 进行切帧&#xff0c; magick 进行合并代码 QString gifPath "E:\\workspace\\qt\\gif2imgs\\203526qre64haq3ccoobqi.gif"; // 你的图片QMovie movie(gifPath); movie.setCacheMode(QMovie::CacheNone);qDebug() << movie.frameCou…

Blender动画怎么云渲染?一分钟学会渲染速度提升数十倍

1.Blender为什么需要渲染&#xff1f; Blender是一款功能强大且备受欢迎的开源3D建模和渲染软件&#xff0c;为设计师、艺术家和动画制作人提供了无尽的创作可能。随着其视觉质量和功能的不断提高和完善&#xff0c;Blender项目的渲染时间也显著增加&#xff0c;越来越多的设计…

电子信息工程学Python C++还是Java?

电子信息工程学Python C还是Java? 在开始前我有一些资料&#xff0c;是我根据自己从业十年经验&#xff0c;熬夜搞了几个通宵&#xff0c;精心整理了一份「C的资料从专业入门到高级教程工具包」&#xff0c;点个关注&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&a…

flex 属性3

order 属性定义项目的排列顺序。数值越小&#xff0c;排列越靠前&#xff0c;默认为0 。 通过align-self 属性&#xff0c;可以单独调整某个伸缩项目的对齐方式 默认值为 auto &#xff0c;表示继承父元素的 align-items 属性。

西南科技大学计算机网络实验二 (IP协议分析与以太网协议分析)

一、实验目的 通过分析由跟踪执行traceroute程序发送和接收捕获得到的IP 数据报,深入研究在IP 数据报中的各种字段,理解IP协议。基于ARP命令和Ethereal进行以太网帧捕获与分析,理解和熟悉ARP协议原理以及以太网帧格式。 二、实验环境 与因特网连接的计算机网络系统;主机操…