2012-08-14 45 views
0

我正在通過ajax加載頁面的網站上工作。我使用#!/ url語法跟蹤當前位置。如果,當頁面firsty加載該頁面已在該網址的哈希部分的URL,我重定向到該頁面使用javascript:Chrome:刷新頁面後未顯示背景圖像+ javascript重定向

document.location = initialPage; 

我的內容是由一羣與位置的div的:絕對以正確的順序堆疊顯示。我的身體背景是一組使用jQuery幻燈片定期切換的圖像。 這適用於所有的瀏覽器,除了Chrome中的問題(以及這裏的問題),我有時會丟失內容div的背景圖片。重現最可靠的方法是:

請注意,如果您現在再次使用Ctrl-F5進行刷新,頁面會再次顯示爲正常。在這兩種情況下,都不會在頁面加載時運行重要的JavaScript。背景滾動被初始化,但問題存在於沒有背景的頁面上(項目頁面)。 我傾向於這是在Chrome中的錯誤,但我需要這個工作。任何人都可以提出建議

Menno

+0

也許它與[此Chrome漏洞](http://code.google.com/p/chromium/issues/detail?id=143144)有關。 – LeBen 2012-08-16 14:56:27

+0

這看起來非常相似。如果他們儘快修復它,我不需要做任何事情。 – 2012-08-16 17:42:04

+0

該問題在Chrome的開發通道版本中不會發生。所以這是一個Chrome的bug。我想這意味着我的網站太棒了,Chrome無法處理它。 – 2012-08-17 07:44:11

回答

2

嘗試在CSS上爲背景使用絕對路徑。也許它可以幫助確定問題。你

也可以嘗試網頁加載

$(document).ready{ 
    $("#content").css("background","url(../Images/Css/bg_content.png)"); 
} 

後背景適用於塊也或許,這將是有用的。當我要求示例頁面,如http://epsilon.tabeoka.be/fr/contacts。瀏覽器做了41-42請求並上傳所有圖像。當我按你的方式(按Ctrl-F5) - 瀏覽器只做31-33請求。他不上傳圖片的背景。看起來他認爲他們已經上傳了。

因此,當我禁用鉻上的緩存 - 錯誤消失。

也許你應該嘗試添加所有背景屬性到您的網頁,而不是CSS,並添加到它的隨機值是這樣的:

<style> 
    #content { 
    background:url(../Images/Css/bg_content.png?rnd=123124); 
    } 
</style> 
+0

今天我有一個非常忙碌的一天。只是讓你知道我明天會嘗試javascript解決方法,並讓你知道它是否能讓我得到任何地方。謝謝。 – 2012-08-16 17:42:57

+0

http://epsilon.tabeoka.be/現在已經更新,並在鉻中工作。我用一個rgba背景替換了一些背景,並且將一個隨機查詢字符串添加到背景顏色無法替換的背景中。勝利! – 2012-08-17 09:38:55

1

如果它是一個真正的Chrome有錯誤,(見你的問題我的評論),你可以嘗試用rgba背景色替換你的背景圖像。這是更好的,你可以添加舊的瀏覽器的回退。

background-color: rgb(16,34,68); 
background-color: rgba(16,34,68,.75); 
+0

這將是一個很好的解決方案的彩色背景。不幸的是,徽標和滾動按鈕也是css背景和缺失。無論如何,我會嘗試使用背景顏色,以防其餘部分需要JavaScript解決方法。謝謝。 – 2012-08-16 17:41:17

+0

感謝您的幫助。我用http://epsilon.tabeoka.be/上的背景色替換了我可以使用的背景。 我接受了LLalive的答案,因爲它實際上是一個解決背景圖像沒有加載的問題的解決方案。 – 2012-08-17 09:41:37