2014-10-08 104 views
0

我將我網站的所有javascript保存在一個巨大的文件 - my_scripts.js中。在所有頁面上,我推遲加載此文件(使用內嵌的JavaScript)。這是加載的最後一件事。被加載的背景圖片閃爍

因爲對於我的HTML主體我使用大背景圖像,我認爲這也是一個好主意,也推遲加載這個圖像。從我的身體css類我刪除了這部分:background-image: url('my_background.jpg');

然後,我my_scripts.js的第一行我加了這一點:document.body.style.backgroundImage = "url(my_background.jpg)";

現在,需要顯示的背景圖像的CSS加入到我的主樣式表與JavaScript。工作,在加載其他所有內容後加載大背景。

但是:當我在頁面之間導航時,背景圖像閃爍。它每次都被加載。我究竟做錯了什麼? my_scripts.js應該在瀏覽器的緩存中!爲什麼閃爍?

編輯:仍然閃爍如果我

if (document.images) { 
img1 = new Image(); 
img1.src = "my_background.jpg"; 
} 

回答

0

使用background-image:url('my_background.jpg)";而不是document.body.style.backgroundImage = "url(my_background.jpg)";預裝的形象,因爲,簡單地說,你的CSS規則與無閃爍的工作。簡單。

+0

我需要添加JS的背景。因爲...讀者太多太無聊解釋.. – Malasorte 2014-10-08 10:00:40

+0

好吧..也許你是對的.. – Malasorte 2014-10-08 10:30:57