因此,我需要测量使用jQuery发送的所有AJAX请求的响应时间,因此如果请求的时间超过[x]秒,我可以通知用户。但是,我不想中止请求,因此我没有使用timeout
的{{1}}属性。所以我查看了$.ajaxSetup
,但只有在没有其他任何AJAX请求正在进行时它才会运行。但是,因为我以异步方式发送多个请求,所以它不会运行,而是一个。我最擅长做什么?
答案 0 :(得分:2)
我认为您正在寻找.ajaxSend()
每当要发送Ajax请求时,jQuery都会触发ajaxSend事件。已经使用.ajaxSend()方法注册的任何和所有处理程序都会在此时执行。
答案 1 :(得分:0)
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
}
});