2012-07-31 109 views
2

我正在尋找一種方法來加載背景圖像(CSS),就好像它們在加載時出現一樣,而不是「滾動」。我寧願讓一張圖像在一次閃現後300毫秒出現,而不是讓它看起來像一個壞的PowerPoint效果。防止逐行掃描(逐行)加載背景圖像

任何技術或可以使用的特定代碼(除了緩存)?

感謝,

+0

多大的圖像?如果圖像是1mb +,我完全可以看到發生這種情況。 – 2012-07-31 13:49:45

+0

有8張圖片,都是+/- 60Kb – jonasll 2012-07-31 14:18:57

+0

Waoh,這些都很小,你看到圖像掃描線的連接速度有多快? – 2012-07-31 14:30:56

回答

0

首先,如果您的圖片出現在「滾動」的圖片中,它就太重了。

存在不同的程序或網站,以減少您的圖像的網站(不失去質量) 爲樣本,Yahoo SMUSH.IT!是好的!

後,我不知道是否存在的方法,下載後出現的背景圖像...也許在JavaScript ...

1

基本上你需要要麼隱藏在初始加載的元素,或者有沒有背景在CSS中,加通過JavaScript的圖像,然後應用CSS背景在onload每個圖像的事件。

CSS本身不能做到這一點。

1

爲你的頁面頂部隱藏您可以加載圖像,所以當你稍後將它放入DOM時,它就是一個緩存副本。或者,您可以在其上放置隱藏屬性,並在300毫秒計時器後隱藏。後者會以更確定的方式做你想要的,但這取決於你的觀衆的網絡速度。使用

3

的jsfiddle http://jsfiddle.net/9fFKT/3/

$("#bg").hide(); 
$('#bg').load(function(){ 

    $('#bg').show(); 
}); 

jQuery的你可以隱藏,直到它的負荷和一次顯示它的加載

+0

擴展版本:你可以做到這一點,例如當大bg加載時放一些壓縮和更小版本的bg圖像,並且在加載大bg圖像完成時交換背景。 – 2012-07-31 13:55:29

+0

重要的是要注意,這個解決方案是使用jQuery。 – 2012-07-31 13:59:49