2012-11-25 19 views
0

這很難解釋,因爲它很奇怪。但我會盡我所能。某些東西沒有加載第一次用戶訪問頁面,只能在chrome上

我有一個滾動條,需要在內容溢出包裝時出現。簡單。

但是,在用戶第一次訪問該頁面時,腳本或我的html的一部分未加載。當他第二次訪問該頁面時,它可以正常工作。

要看到它,點擊「組合」: http://chuckbox.net/chromatemp/

- >第一次,你會不會看到滾動條 - >點擊一次,你現在會看到它(和你」我會一直看到它)

我只有谷歌瀏覽器的這個問題。 僅供參考,我使用jscrollpane作爲滾動條,但我認爲問題不在那裏。

+0

(image cache + timing + reflow on image load)issue? –

+0

@JanDvorak我不知道我理解。你會說容器起初沒有合適的高度,因爲它裏面的圖像沒有加載? – Chuck

+0

那就是我的意思。不過,我還沒有看到該頁面。它也不應該導致腳本不加載。 –

回答

1

訪問該頁面顯示以下內容:

的影像不會有他們的height屬性設置,瀏覽器必須等待無論是對你的外部CSS或圖像本身就知道圖像尺寸前。

您有以下片段:

$(function(){ 
    $('#side-content').jScrollPane(); 
    $('#portfolio-content-wrapper').jScrollPane(); 
    }); 

它要求當DOM加載jScrollPane插件,但加載外部CSS之前,可能出現這種情況。這意味着插件在被調用時不能訪問其正確的長度,除非CSS(或所有圖像)已經存在於瀏覽器緩存中(顯然,稍後不會讀取它)。

爲了解決這個問題,無論是

包括height屬性與圖像:<img src=... height=240>,或者

等待外部CSS加載:

$(window).load(function(){ 
    $('#side-content').jScrollPane(); 
    $('#portfolio-content-wrapper').jScrollPane(); 
    }); 

或者,你可能會初始化插件ready然後重複load(如果插件允許的話)。

+0

非常感謝你對這個完美的解釋 – Chuck

相關問題