loadstart — Fires when the fi rst byte of the response has been received.
progress — Fires repeatedly as a response is being received.
error — Fires when there was an error attempting the request.
abort — Fires when the connection was terminated by calling abort().
load — Fires when the response has been fully received.
loadend — Fires when the communication is complete and after fi ring error, abort, or load.
opera11和ie8以上只支持load事件,暂时没有浏览器支持loadend事件
load事件:
当响应被完全接收以后,就会触发该事件,因此不用去检测readystate属性。虽然该事件会有event对象,它的target指向xhr实例,但不是所有浏览器都支持,所以里面还是用xhr.state:
var xhr = createXHR();
xhr.onload = function(){
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304){
alert(xhr.responseText);
} else {
alert(“Request was unsuccessful: “ + xhr.status);
}
};
xhr.open(“get”, “altevents.php”, true);
xhr.send(null);
progress事件:
浏览器接受到响应数据时周期性触发该事件,和load事件一样,应该在open方法之前配置,该事件的事件对象里面有三个额外的属性:
lengthComputable: 判断处理信息是否可用
position: 目前已经接收到的字节数量
totalSize: 由Content-Length 头部信息返回的预计总共会接收到的字节数(假设有返回这个header)
var xhr = createXHR();
xhr.onprogress = function(event){
var divStatus = document.getElementById(“status”);
if (event.lengthComputable){
divStatus.innerHTML = “Received “ + event.position + “ of “ +
event.totalSize +
“ bytes”;
}
};
xhr.open(“get”, “altevents.php”, true);
xhr.send(null);
vue和jQuery嵌套实现异步ajax通信
测试left join和where的优先级
--create table tab1--(--id int,--size int--) --create table tab2--(--size int,--name varchar(10)--) ...
[转]使用python来操作redis用法详解
转自:使用python来操作redis用法详解 class CommRedisBase(): def __init__(self): REDIS_CONF = {} connection_pool = ...
es6笔记(2) let 和 const
let命令 用来声明一个变量,和var非常类似 1.使用let声明的变量,所声明的变量只在命令所在的代码块中有效 { let a = 1; console.log(a); // 这里是可以使用的 } ...
2017 先知创新大会:有 ZHI 而来
先知创新大会( XIANZHI INNOVATION CONFERENCE ) 是聚焦安全行业创新的行业盛事, 旨在推动安全技术的进步和发展. 先知大会的主题是“极致·眼界·创新” 极致:追求技术的极 ...