txt ファイルから iframe に URL を配置し、各ソースの読み込み時間をチェックするスクリプト ウィッチを取得しました。txt ファイルに 4 つの URL がある場合、3 つの結果が得られますが、1 つの結果は常に短すぎます (0,016 秒ほどでフレームが読み込まれ、他の読み込みには 1 ~ 4 秒かかります)。リストから他の URL を削除し、悪い値を与える URL だけを残してスクリプトを実行すると、通常の値が返されます (読み込みに数秒かかります)。
スクリプトが話しているのは次のとおりです。
<script type="text/javascript">
$.get("imones.txt", function (data) {
var array = data.split(/\r\n|\r|\n/);
var beforeloadingtime = (new Date()).getTime();
var beforeTime = [];
beforeTime[0] = beforeloadingtime;
$.each(array, function (index, value) {
var jsonnuorodos = "http://anyorigin.com/get?url=" + array[index] + "&callback=?";
$.getJSON(jsonnuorodos, function (data) {
var iframe = $("#frame_id")[0];
var doc = iframe.document;
if (iframe.contentDocument) {
doc = iframe.contentDocument;
} else if (iframe.contentWindow) {
doc = iframe.contentWindow.document;
}
doc.open();
doc.writeln(data.contents);
doc.close();
var loadingtime = (new Date()).getTime();
beforeTime.push(loadingtime);
for (i = 0; i < array.length; i++) {
var result;
result = (beforeTime[i + 1] - beforeTime[i]) / 1000;
$("#loadingtimediv" + i).html(result);
}
});
});
});
</script>
複数の URL があるときにスクリプトを実行すると、この不正確な結果が得られるのはなぜですか?
編集: 私のスクリプトは、次の URL を追加する前に 1 つの URL が完全に読み込まれるのを実際には待機していないと思います。これが誤った結果を得る理由でしょうか?