2012-03-12 51 views
3

有沒有辦法告訴瀏覽器在頁面加載時顯示加載程序圖像?加載頁面時顯示加載程序NO AJAX

我正在構建一個應用程序,它基本上是一個將在webview上加載的html5應用程序。所有文件都將位於設備本身,不存在與服務器的交互,因此AJAX無法使用。

如果用戶導航到其他頁面,則立即加載程序應該出現,然後在頁面完全加載時隱藏。

這是可以使用JS完成的事情嗎?

感謝

UPDATE:

我沒有完全按照大家所提到的,顯示在文件準備裝載機,也顯示出它,而網頁獲得的卸載,然後在文件準備好,但加載器在頁面已卸載並且另一頁尚未下載期間不可見。有沒有辦法將加載器綁定到瀏覽器而不是頁面?

回答

2

有一個頁面(PageLoader),它將使用ajax加載其他頁面,然後可以顯示加載程序。

PageLoader將以頁面名稱作爲參數並加載頁面。

+0

我認爲阿賈克斯將無法正常工作,在鍍鉻它顯示跨-origin錯誤,但它在Safari瀏覽器上工作,這就是我現在需要的。使用上面提到的技術@dhinesh。 – Harsha 2012-03-15 10:46:16

3

你可以做這樣的事情

<body> 
    <div class="LoadingStyle" id="LoadingInfo"></div> 
    <div style="visibility:hidden" id="Content"> 
    <!-- All your content goes here --> 
    </div> 
</body> 

documentready你可以做這樣

$(function() { 
    $("#LoadingInfo").hide(); 
    $("#Content").css("visibility", "visible"); 
}); 

的基本思路是,以展示一些東西,同時文件還沒有準備好。

編輯

你可以用它玩。沒有必要隱藏內容。你可以覆蓋它絕對定位div並只隱藏它。

+3

請注意,您寧願使用:'display:none;'或者您可能會收到不需要的滾動條。 – PeeHaa 2012-03-12 08:24:49

+0

@PeeHaa如果內容是'display:none;',內容中的圖像是否會加載? – Oybek 2012-03-12 08:26:25

+1

當然:http://jsfiddle.net/nvdBU/ – PeeHaa 2012-03-12 08:36:37

4

您可以在所有內容(位置:絕對,100%寬度和高度)上放置加載屏幕,並在頁面準備就緒時將其淡入淡出。

演示:http://jsfiddle.net/G8GkA/

<div id="page"> 
    <div id="loader"><span>loading...<span></div> 
     content.... 
</div> 

淡出負載(使用jQuery):如果沒有服務器

$(function(){ 
    $('#loader').fadeOut(); 
});