哈尔滨阿里云代理商:ajax实现进度条

实现进度条一般使用ajax技术,具体步骤如下:

  1. 引入jquery库
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
  1. 编写css样式代码
#progress{
  width: 300px;
  height: 10px;
  background-color: #ccc;
  position: relative;
}
.bar{
  width: 0%;
  height: 100%;
  background-color: #4caf50;;
  position: absolute;
  left: 0;
  top: 0;
  transition: width 0.3s ease-out;
}
  1. 编写html页面代码
<div id="progress">
  <div class="bar"></div>
</div>
  1. 编写ajax请求代码
// 定义变量
var xhr = new XMLHttpRequest();
var url = "your_api_url"; //需要请求的接口地址
var progress = $("#progress .bar");

// 监听状态
xhr.onprogress = function(event) {
  if (event.lengthComputable) {
    var percent = (event.loaded / event.total) * 100 + "%";
    progress.width(percent); //根据返回的进度信息更新进度条进度
    progress.text(percent);  //显示进度
  }
};

// 发送请求
xhr.open("GET", url, true);
xhr.send();

通过监听xhr对象的onprogress事件,可以获取ajax请求的进度信息,并实时更新进度条的进度。其中,event.loaded属性表示已经加载的字节数,event.total属性表示需要加载的总字节数。根据这两个参数可以计算出当前加载的百分比,从而动态更新进度条的进度。

  1. HTML代码:
<div id="progressBar"></div>
  1. CSS代码:
#progressBar {
  width: 300px;
  height: 20px;
  border: 1px solid #ccc;
  position: relative;
  margin: 20px;
}

#progressBar .bar {
  width: 0;
  height: 100%;
  background: #07c;
  position: absolute;
  top: 0;
  left: 0;
}
  1. JavaScript代码:
var ajax = new XMLHttpRequest(),
  progressBar = document.getElementById("progressBar"),
  bar = progressBar.querySelector(".bar");

// 监听进度事件
ajax.upload.addEventListener("progress", function(e) {
  var width = Math.round((e.loaded / e.total) * 100);
  bar.style.width = width + "%";
}, false);

// 发送请求
ajax.open("POST", "upload.php");
ajax.send(new FormData());

说明:

  • 通过document.getElementById("progressBar")获取进度条元素节点;
  • 通过progressBar.querySelector(".bar")获取进度条进度元素节点;
  • 监听XMLHttpRequest对象的uploadprogress事件,获取上传进度;
  • 在事件回调函数中计算宽度百分比,设置进度条进度元素节点的宽度;
  • 使用ajax.open()ajax.send()方法发送Ajax请求;
  • 服务器端代码省略。

发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/116103.html

(0)
luotuoemo的头像luotuoemo
上一篇 2023年12月29日 01:16
下一篇 2023年12月29日 01:46

相关推荐

  • 宁波阿里云代理商:apache网站服务器

    Apache是一款非常流行的开源网页服务器软件,可以在多种操作系统上运行,包括Unix,Linux还有Windows。Apache提供众多强大的功能,包括CGI,SSL和虚拟域名等等。 如果你在宁波地区寻找阿里云的Apache网站服务器的代理商,可以通过以下几种方式: 通过搜索引擎搜索,例如在Google或者百度上输入”宁波阿里云Apache网站…

    2024年3月16日
    16700
  • 青岛阿里云代理商:阿里通信邮件营销服务

    青岛阿里云代理商是一家提供阿里通信邮件营销服务的公司。阿里通信是阿里云旗下的一项服务,它通过邮件营销的方式,帮助企业向潜在客户和现有客户发送信息,达到宣传推广的目的。青岛阿里云代理商作为阿里云的合作伙伴,可以提供阿里通信邮件营销服务的销售和支持服务。 阿里通信邮件营销服务包括邮件模板设计、邮件发送和数据分析等多个环节。青岛阿里云代理商可以根据客户的需求,为其…

    2023年12月18日
    17700
  • 阿里云企业邮箱:为什么阿里云企业邮箱的邮件标签更实用?

    阿里云企业邮箱:为什么阿里云企业邮箱的邮件标签更实用? 面对日益增多的电子邮件,有效管理和快速检索邮件成为企业运营中不可或缺的一环。阿里云企业邮箱凭借其强大的功能和便捷的管理系统,特别是在邮件标签管理方面,展现出了显著的优势。 阿里云企业邮箱的邮件标签功能简介 阿里云企业邮箱的邮件标签功能允许用户自定义创建多个标签,并将这些标签附加到邮件上。这样,用户可以根…

    2025年6月19日
    2000
  • 天津阿里云代理商:阿里云如何加载oss

    阿里云的对象存储服务(OSS)是一种海量、安全、低成本、高可靠的云存储服务,可以帮助用户存储和处理大规模数据。 要加载阿里云OSS,可以通过以下步骤进行操作: 创建OSS存储空间:首先登录阿里云控制台,选择对象存储OSS服务,然后在控制台上创建一个新的存储空间。 配置访问权限:在创建好存储空间后,需要设置存储空间的访问权限,包括公共读写权限、Bucket策略…

    2024年3月3日
    19500
  • 阿里云服务器设置定时重启

    您可以使用以下步骤来设置阿里云服务器定时重启: 登录到阿里云控制台,并选择您要设置定时重启的服务器实例。 在实例详情页面的左侧导航栏中,点击”安全组与实例监控”,然后选择”定时任务”。 在定时任务页面,点击”创建定时任务”。 在创建定时任务的窗口中,输入任务名称,选择定时重启的时间和日期…

    2023年9月3日
    20200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
购买阿里云服务器请访问:https://www.4526.cn/