簡體   English   中英

為什么Internet Explorer(或Chrome)不顯示我的“正在加載...” gif,而Firefox卻顯示?

[英]Why won't Internet Explorer (or Chrome) display my 'Loading…' gif but Firefox will?

我有一個頁面會觸發幾個xmlHttp請求(同步,純香草javascript,我很樂意使用jquery,感謝您提到)。

我基於啟動/停止相關的javascript函數來隱藏/顯示帶有加載圖像的div(有時我嵌套了一系列3個xmlhttp請求生成函數)。

div = document.getElementById("loadingdiv");
if(div) {
    if(stillLoading) {
        div.style.visibility='visible';
        div.style.display='';

    } else {
        div.style.visibility='hidden';
        div.style.display='none';
    }
}

在Firefox中,這似乎工作正常。 div顯示並顯示所需處理的gif。 在IE / Chrome中,我沒有得到任何反饋。 我只能通過使用上面的代碼將alert()方法放在適當的位置來證明div / image甚至可以顯示,這將停止該過程,並且似乎為有問題的瀏覽器提供了呈現dom變化所需的窗口。

我希望IE / Chrome能夠像在Firefox中一樣工作。 是什么賦予了?

如果xmlhttprequests不是異步的,則您會發現IE至少不會重寫UI,直到它們完成為止(盡管未在Chome中進行測試),但我遇到了與非異步$ .ajax jquery請求相同的問題。

我知道您不是在問jQuery,但您可能會考慮使用jQuery顯示/隱藏div,以便更輕松地跨瀏覽器兼容。

http://api.jquery.com/show/

http://api.jquery.com/hide/

這是一個有用的教程:

http://www.learningjquery.com/2006/09/slicker-show-and-hide

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM