我試圖寫它顯示一個div,說一個很簡單的功能工作正常「載入中...」,然後讓一個jQuery AJAX( )調用,一旦完成,隱藏加載div。該代碼工作完全在Firefox,但IE 7(也許8/9爲好,只有7測試)和Chrome都有問題:加載DIV,在Firefox
function ajaxwl(url) {
$('#loadingDiv').show();
var xmlHttp=$.ajax({type: "GET",
url: url,
async: false });
$('#loadingDiv').hide();
return xmlHttp;
}
我通過與Chrome的調試代碼加強,然後它的工作 - 加載div按預期顯示。但是,如果我在沒有調試器的情況下運行代碼,Chrome(和IE 7)會加載AJAX請求,而不會顯示加載div。也許這與Chrome瀏覽器鎖定瀏覽器這一事實有關,因爲我正在使用非異步請求?
編輯:我結束了在請求轉換爲異步請求(這需要以這種代碼,我繼承做到處轉換,但我一直在拖延......)現在一切按預期工作:
function ajaxwl(url) {
$('#loadingDiv').show();
var xmlHttp=$.ajax({type: "GET",
url: url
}).done(function() {
$('#loadingDiv').hide();
});
return xmlHttp;
}
感謝您的快速反應!
你也許應該使用異步請求,我不知道這是造成問題的原因,但有JS停止執行,同時執行網絡任務是不好的做法。 –
你說得對。你使我陷入困境,將我的所有請求轉換爲異步。謝謝。 – royaldark