Ajax进度事件有哪些?

2020-06-12 11:02发布

3条回答
我的网名不再改
2楼 · 2020-06-12 11:15

loadstart:在接收到响应数据的第一个字节时触发

  progress:在接收响应期间持续不断地触

  error:在请求发生错误时触发

  abort:在因为调用abort()方法而终止连接时触发

  load:在接收到完整的响应数据时触发

  loadend:在通信完成或者触发error、abort或load事件后触发

  timeout:超时发生时触发


有一个专门的对象XMLHttpRequestUpload对象用来管理上传进度,可以通过xhr.upload属性拿到。它也是通过过事件来监听上传进度。主要有:

1、onloadstart 上传开始:一般用来初始化进度条

2、onprogress 上传过程中:该方法会定时执行,或者说反复执行,这点很重要。因此你可以不断的计算进度,在事件对象event中有两个属性 loadend和total 分别表示已上传和文件总大小,loaded/total 便是进度,最后注意转化成百分比的整数即可。

3、onloadend 上传完成:可以用来关闭进度条

猫的想法不敢猜
4楼 · 2021-11-17 09:26

ProgressEvents规范定义了与客户端服务器通信有关的事件。


这些事件包括:


1.loadstart:在接收到


2.progress:在接收响应


3.error:在请求发生cuo


4.


5.load:在接收到完整的响应数据时触发


6.loa


load事件:


在Firefox中用以代替readystatechange事件,响应接收完毕会触发一个load事件,因此也就没有必要去检查readystate属性了


而onload事件接收到一个event对象,其target指向的是XHR对象实例,因此可以访问XHR对象的所有方法和属性。


然而并非所有的浏览器都实现了适当的事件对象,因此必须使用XHR对象变量

image.png

只要浏览器接收到服务器的响应不管状态如何,都会触发load事件,这意味着你必须要检查status属性。


progress事件


这个事件会在浏览器接收服务器传来的新数据期间周期性的触发。而onprogress事件处理程序会接收到一个event对象,其targe指向XHR对象实例,此外还附带三个额外的属性:


lengthComputable:表示一个进度信息是否可用的布尔值


position:表示已经接收的字节数


totalsize:表示根据Content-Length确定的响应头部确定的预期字节数

image.png

 xhr.onprogress = function(event){


    var divstatus = document.getElementById(“status”);


    if(event.lengthComputable){


        divstatus[removed] = "Recived:"+event.position+"of"+event.totalsize+"bytes";


    }


};


xhr.open("get","altevent.php",true); xhr.send(null);

必须在open之前调用progress事件



————————————————

版权声明:本文为CSDN博主「Milan_KunderLa」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Milan_KunderLa/article/details/80973885

来源于网络,仅供参考

相关问题推荐

  • 回答 97
    已采纳

    Js给初学者的印象总是那么的杂而乱,相信很多初学者都在找轻松学习Js的途径。在这里给大家总结一些学习Js的经验,希望能给后来的学习者探索出一条轻松学习Js之路。Js给人那种感觉的原因多半是因为它如下的特点:A:本身知识很抽象、晦涩难懂,如:闭包、内置...

  • 回答 4

    看图:

  • 回答 18

    基本类型( 6种 ):Number ( 数值 ) String ( 字符串 )Boolean ( 布尔 ) Undefined ( 未定义 )Null ( 空 )ES6 - Symbol  ( 唯一 )

  • 回答 19

    JavaScript 使网页增加互动性,使有规律地重复的HTML文段简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由 CGI 验证。JavaScript 的特点是无穷无尽的,只要你有创意。...

  • 回答 18

    timeoutId: 定时器IDfunc: 延迟后执行的函数code: 延迟后执行的代码字符串,不推荐使用原理类似eval()delay: 延迟的时间(单位:毫秒),默认值为0param1,param2: 向延迟函数传递而外的参数,IE9以上支持setInterval: 以固定的时间间隔重复调用一个函...

  • 回答 15

    Number类型String类型Boolean类型Undefined类型Null类型

  • 回答 14

    空格在ASCII中的值为32,空字符为0,可本人觉得不就是都是为空的吗,没有什么区别?char mychar1,mychar2;mychar1=' ';mychar2='\0';printf(mychar1=%d,mychar2=%d,mychar1,mychar2);//其中mychar1=32;mychar2=0;...

  • 回答 16

    1.变量名可以有数字0~9、大小写字母、下划线、美元符$组成。2.变量名不能以数字开头。 当我们以数字为开头时,代码就会出现橙色下划线,代表命名不...3.变量名不允许使用中文。 不能允许使用中文这个就不用多说了吧,不管你在哪找代码来看,代码中...4.区分大小写...

  • 回答 8

    向一个对象数组里面添加新的属性var arry= [{a:11,b:22,c:33,d:44},{a:11,b:0,c:0,d:44},{a:11,b:22,c:99,d:99}];var arry2=[];arry.map(((item, index)=> {arry2.push(Object.assign({},item,{mess1:item.c,mess2:item.d}))}))cons...

  • 回答 2

    我觉得getTopWindow() 应该是他自己写的函数 mask  应该是getTopWindow()函数中 return 出的一个什么玩意show()  jQuery的显示

  • 回答 16

    看上图

  • 回答 9

    如图所示

  • 回答 12

    1、原型对象也是普通的对象,是对象一个自带隐式的 __proto__ 属性,原型也有可能有自己的原型,如果一个原型对象的原型不为 null 的话,我们就称之为原型链 2、 原型链是由一些用来继承和共享属性的对象组成的(有限的)对象链...

  • js选项卡的实现原理2021-06-15 21:48
    回答 6

    如图所示,最简单的选项卡思路:选项卡就是点击按钮切换到相应内容,其实就是点击按钮把内容通过display(block none)来实现切换的。1、首先获取元素。2、for循环历遍按钮元素添加onclick 或者 onmousemove事件。3、因为点击当前按钮时会以高亮状态显示,所以...

  • 回答 4

    1、js截取两个字符串之间的内容:123var str = aaabbbcccdddeeefff; str = str.match(/aaa(\S*)fff/)[1]; alert(str);//结果bbbcccdddeee2、js截取某个字符串前面的内容:123var str = aaabbbcccdddeeefff; tr = str.match(/(\S*)fff/)[1];......

  • 回答 4

    如果是ajax 就直接获取如果是传到一个页面 就再get再在js中使用 就可以获取了。 可以在js中获取一个变量 但是不能写入一段java代码.

没有解决我的问题,去提问