0

Jquery から URL またはページの読み込み時間を取得する方法はありますか? たとえば、「http://www.yahoo.com」に ajax リクエストを送信した場合、ページが完全に読み込まれるまでにかかった時間を知りたいとします。私は同じドメイン ポリシーを認識しています。しかし、ページの読み込み時間を知らせる単純な JavaScript ユーティリティを書きたいだけです。

YSlow などのツールがあることは知っていますが、このユーティリティをブラウザー タブで継続的に実行し、ページの読み込み時間がしきい値を超えたときにアラート (javascript) アラートを表示するようにしたいと考えています。

ありがとう、J

4

2 に答える 2

3

このようなものはうまくいくはずです。

var startTime;
$.ajax({
    // url, type, dataType, etc
    beforeSend: function(xhr){
        startTime = +new Date();
    }
    complete: function(xhr, state){
        var latency = (+new Date()) - startTime;
        window.console.log(latency);
    }
});
于 2012-08-03T08:01:51.373 に答える
0

$ .ajaxを使用している場合、次のような「beforeSend」オプションによって呼び出される関数で開始時刻を指定して変数を設定できます。

var start = (new Date()).getTime();

次に、次のような「complete」オプションを使用して別の変数を設定します。

var finish= (new Date()).getTime();

次に、2つを比較して、次のような秒数を取得します。

var secs = (finish-start)/1000;

または、開始変数を設定したら、「setInterval()」を使用して、しきい値を超えるまで開始変数を現在の時刻と照合します。

しかし、$。ajaxにも「タイムアウト」オプションがあることをご存知でしょう。これはここでかなり詳しく説明されており、役立つ場合があります。

$.ajaxエラーがタイムアウトかどうかを判断する

于 2012-08-03T06:47:10.057 に答える