2011-10-04 57 views
4

之前的頁面我已經建立了一個網站,做了一大堆的計算,頁面加載的(基本上它決定了用戶的屏幕尺寸,然後分配所有的頁面圖像的大小和位置,並應用它們) 。我遇到的問題是連接速度較慢,這是可見的(所有圖像將從角落開始,然後調整大小和重新定位)。這不是一個大問題,但它有點不協調。運行腳本顯示

我使用jQuery來做到這一點,所有的計算都發生在$(document).ready,是有什麼方法在此之前做到這一點?或者我應該使用預加載器?什麼是好的(queryLoader不適合我,而我能找到的所有其他的只是用於預加載圖像)。

任何建議,將不勝感激!

+1

爲什麼你不只是使用CSS? – RobG

回答

3

如果你只是擔心圖像,怎麼樣造型它們是無形的(顯示:無),直到後,他們已經重新定位?

0

如何使用iframe您的主頁和裝載頁面將只包含你所需要的JS。由於兩者都來自同一個域名,因此您不必擔心iframe上的跨域限制。

2

要展開喬的回答,最簡單的方法是隱藏所有圖像,直到他們已經加載。例如,像這樣:

$(function() { 
    $('img').hide(); 
    $('img').load(function() { $(this).show() }); 
}); 

你甚至可以用CSS預先隱藏起來,但我不會推薦,除非上述方法仍閃爍了一下你。

0

我面對內iframe環境問題。但目前我用以下解決方法,以避免不順眼:

<style> 
    .load_class{ 
      display:block; 
      position:absolute; 
      top:0;left:0; 
      background-color:#fff;width:100%;height:100%; 
      z-index:9990; 
      text-align:center; 
     } 
</style> 
<script> 
    setTimeout("loadingComp()",15000); 

    function loadingComp(){ 
     jQuery("#i_init").fadeOut(); 
    } 
</script> 
<div id="i_init" class="load_class"> 
<img src="images/loading.gif" alt="Loading..."/> 
      Loading... 
</div> 

但是這是一個硬編碼解決方案。一個div將在15秒後淡出:(