Web サイトのユーザーの接続速度 (レイテンシー?) を表示したい。XMLHttpRequest オブジェクトのリクエストと応答時間を測定することで可能になると思います。コードは次のとおりです。
var t;
function ajsend(){
var request = new XMLHttpRequest();
var url;
request.onreadystatechange = function(){
if( request.readyState == 4 && request.status == 200 ){
var u = new Date().valueOf();
var timeTaken = u - t;
var disp;
if( timeTaken < 100 )
disp = "Excellent! " + timeTaken + " milliseconds.";
else if( timeTaken < 500 )
disp = "Very Good! " + timeTaken + " milliseconds.";
else if( timeTaken < 1200 )
disp = "Normal! " + timeTaken + " milliseconds.";
else if( timeTaken < 2000 )
disp = "Poor! " + timeTaken + " milliseconds.";
else
disp = "Very Poor! " + timeTaken + " milliseconds.";
document.getElementById("disp").innerHTML = disp;
}
};
t = new Date().valueOf();
url = "noscript.php";
request.open("GET", url, true);
request.send();
}
できます!しかし、結果はブラウザの Web コンソールの測定値とは少し異なります。それで、それはAJAXからの最良の方法ですか、それともAJAXによるより良い方法ですか? ありがとう。