2008-12-10 62 views
3

我有一個渲染緩慢的頁面。網上旅行很快。該頁面的初始加載很快。你實際上可以看到(如果你的機器足夠慢),html組件的初始佈局。然後一些JavaScript的東西運行,使一些這些組件全部ajaxy。然後最終這個CSS被應用。在html頁面加載和渲染期間顯示跳動

我無法做任何有關JavaScript的東西,這會拖慢一切爬行。所以我需要一個跳動者告訴用戶阻止,瀏覽器正在工作。有沒有什麼辦法來捕捉瀏覽器是否完成渲染事件?有沒有這樣的事件?有沒有另一種方法來做到這一點?

+2

您可能希望在開始展示在interwebs你「活動指示器」之前做一個年齡檢查。 – Echostorm 2008-12-10 20:08:03

+1

我最初很興奮,但後來失望和困惑。 – Will 2008-12-10 20:13:28

回答

2

顯示活動指示器在運行代碼之前和之後將其隱藏。

使用jQuery:

$("#throbber").show(); 
/* Your AJAX calls */ 
$("#throbber").hide(); 
2

在調用所有Ajax的東西之前,檢查DOM何時準備就緒。

使用Prototype

document.observe("dom:loaded", function() { 
    //your code 
}); 

使用jQuery

$(document).ready(function() { 
     //your code 
});