2013-12-10 45 views
0

jQuery的ajax的時候,我知道我可以一次我的$就調用使用類似沒有專門定時它

var ajaxTime= new Date().getTime(); 
$.ajax({ 
    type: "POST", 
    url: "some.php", 
}).done(function() { 
    var totalTime = new Date().getTime()-ajaxTime; 
    // Here I want to get the how long it took to load some.php and use it further 
}); 

但是,我希望能有越來越加載時間對於任何$就調用一個通用的方法我做了,沒有添加Date()到那個特定的ajax調用。有沒有辦法可以做到這一點?

謝謝

+0

你這樣做只是爲了調試的目的?如果是這樣的話,Fiddler是一個很好的工具,可以顯示ajax調用的時間長短。 – Scottie

+0

是的,我正在做這個調試。謝謝,我會給小提琴一看! – Kousha

回答

0

可以使用全球事件做它,使用.ajaxSend().ajaxComplete()處理一個偉大的工具

$(document).ajaxSend(function (event, jqXhr, opts) { 
    jqXhr._start = new Date().getTime(); 
}); 
$(document).ajaxComplete(function (event, jqXhr, opts) { 
    var end = new Date().getTime(); 
    console.log('Time taken:', opts.url, end - jqXhr._start) 
}); 

演示:Fiddle

或者您可以使用任何網絡監視工具,例如瀏覽器開發人員工具中的網絡選項卡。

0

你這樣做只是爲了調試目的?如果是這樣,提琴手是用於表示一個Ajax調用究竟有多長跑了