哈尔滨阿里云代理商: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

相关推荐

  • 邯郸阿里云代理商:阿里通信平台好不好

    作为邯郸阿里云代理商,我认为阿里通信平台是非常好的。阿里通信平台是阿里云旗下的一款云通信服务,提供短信、语音、呼叫中心等通信能力,可以满足企业在通信领域的各种需求。 首先,阿里通信平台基于阿里云强大的云计算基础设施,具备高可用性和稳定性,能够保证用户的通信服务的可靠性和稳定性。 其次,阿里通信平台提供了丰富的通信能力,包括短信验证码、营销短信、语音验证码、语…

    2023年12月18日
    29300
  • 南通阿里云代理商:apache php 二级域名

    南通的阿里云代理商可以通过配置Apache服务器和PHP来设置二级域名。以下是一般的步骤: 在阿里云管理后台添加新的二级域名,并将其解析到服务器的IP地址。 在Apache的配置文件中设置虚拟主机,指定二级域名的根目录和其他配置信息。例如: <VirtualHost *:80> ServerAdmin webmaster@yourdomain.c…

    2024年2月18日
    30400
  • 阿里云企业邮箱:为什么选择阿里云邮件归档?

    为什么选择阿里云邮件归档? 一、引言 在数字化时代,企业邮箱不仅是沟通的重要工具,更是企业数据资产的核心组成部分。随着法律法规的完善和企业合规需求的提升,邮件归档功能逐渐成为企业邮箱的必备选项。阿里云企业邮箱凭借其强大的邮件归档能力,为企业提供了安全、高效、合规的邮件管理解决方案。本文将详细介绍阿里云邮件归档的优势,帮助您理解为何它成为众多企业的首选。 二、…

    2025年8月3日
    11900
  • 镇江阿里云代理商:阿里云服务器域名绑定

    阿里云提供了域名解析服务,您可以通过阿里云控制台或者API对域名进行绑定。下面是域名绑定的步骤: 登录阿里云控制台,在左侧导航栏找到“域名与网站”下的“域名解析”,点击进入域名解析页面。 在域名解析页面,点击“添加解析记录”。在弹出的对话框中,填写要绑定的域名以及相应的解析记录信息(如主机记录、记录类型、记录值等)。 当解析记录添加成功后,你可以在域名解析记…

    2024年1月30日
    28100
  • 购买阿里云服务器怎么做账务

    要购买阿里云服务器并进行账务操作,可以按照以下步骤进行: 登录阿里云官网:打开阿里云官方网站(www.aliyun.com),点击右上角的”登录”按钮,在登录页面输入您的阿里云账号和密码,完成登录。 选择产品:在阿里云官网首页,点击”产品”或”云产品”,选择”云服务器ECS&…

    2023年10月30日
    26100

发表回复

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

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

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

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