因此,我需要测量使用jQuery发送的所有AJAX请求的响应时间,这样如果一个请求花费的时间超过x秒,我就可以通知用户。但是,我不希望中止请求,所以我没有使用$.ajaxSetup
的timeout
属性。所以我研究了$.ajaxStart
,但是它只有在没有其他AJAX请求的情况下才会运行。但是,因为我异步发送多个请求,所以它只运行一个请求。我最好做什么?
发布于 2013-10-18 22:09:07
我想你是在找.ajaxSend()
每当要发送Ajax请求时,jQuery都会触发ajaxSend事件。所有使用.ajaxSend()方法注册的处理程序都将在此时执行。
发布于 2013-10-18 22:16:08
var startTime;
vat endTime;
$.ajax({
//whatever your code is
beforeComplete:function()
{
startTime = new Date().getTime();
}
success: function() {
var endTime = new Date().getTime(),
total = endTime - startTime;
console.log(total);
}
afterComplete:function()
{
endTime = new Date().getTime();
// alert(endTime-startTime)
// log endTime-startTime
}
});
https://stackoverflow.com/questions/19451609
复制相似问题