1
我正在處理一些本地json文件,但我在加載速度方面遇到了一些問題。我的服務器只是一個用python製作的小型網絡服務器,我通常用它來嘗試我的javascript代碼。 我的腳本只適用於Firefox,我必須延遲60000毫秒(或使用螢火蟲)。 腳本是:加速json加載
function geisson()
{
var iabile = new XMLHttpRequest();
iabile.open("GET", "longanocard.json", true);
iabile.send(null);
PerdiTempo(60000);
var objectjson = {};
var arrayCards= []; //creazione dell'array che conterrà le cards
objectson = JSON.parse(iabile.responseText);
arrayCards = objectson.cards;
//alert(arrayCards[0].__guid__.toSource());
var qwerty = arrayCards[0].__guid__;
var mela = "http://www.airpim.com/png/public/card/" + qwerty + "?width=292";
document.location = mela;
//windows.location.href= mela;
}
PerdiTempo是我使用了延時功能:
function PerdiTempo(ms)
{
ms += new Date().getTime();
while (new Date() < ms){}
}
我如何可以加快文件longanocard.json的負荷?爲什麼延遲不適用於其他瀏覽器?
等待響應這種方式是可怕的。你應該使用回調函數,在'onreadystatechange'事件中檢查響應狀態 – fcalderan
你永遠不應該使用這樣的循環來編寫延遲,因爲瀏覽器在JS代碼完成之前不會重新繪製,所以從用戶的角度來看,瀏覽器將會已鎖定。 – nnnnnn