2013-02-10 79 views
1

我實際上試圖用jquery Isotope構建一個圖像庫。 我不知道爲什麼,但有時畫廊的作品完美,有時它有一些加載問題,你可以在我的屏幕截圖中看到。jQuery同位素加載問題

來源:www.sarahraaber.com

enter image description here

我已經添加在頁面加載定時器和文件加載功能到我的js文件的頭部。 : -/ 任何想法如何解決這個問題?

回答

1

我以前在使用Isotope時看到過這個,通常是JS時機問題。你可以在初始化或回調函數中添加一個具有2000的長定時器的setTimeout(),然後測試它是否仍然發生?這應該有助於確認。

我也注意到您的網站上調整瀏覽器清除佈局問題。嘗試調用Isotope更新函數,一旦所有已加載正確更新佈局。

+0

我試着用$(window).load來加載,結果是hole同位素停止工作。是的,這個問題是在重新調整窗口後解決的,我會嘗試一下更長的超時時間。 編輯:將超時設置爲5000後,幾乎所有圖像都正確加載,但無論如何,真的不可能是解決方案對於那個:P 也許我應該添加一個尋呼機到畫廊得到它更快加載。 – Basti 2013-02-10 14:10:52

+0

確實。有幾件事情可以嘗試,如果你還沒有... – 2013-02-10 14:31:46

+1

1:在'.isotope()'初始化周圍添加'.imagesLoaded()'函數,這允許在更新佈局之前加載所有圖像。 2:當您初始化插件時,您可以添加一個回調函數,在佈局準備就緒後運行「應該」,您可以在那裏調用更新方法。例如。 '$ container.isotope(options,function(){$ container.isotope('reLayout',}));' - 這有點粗糙但可以解決你的問題。 – 2013-02-10 14:39:19

0

我從來沒有使用jquery同位素,但它看起來像jquery磚石一樣(http://masonry.desandro.com/)。砌體有一個drupal的意見插件:http://drupal.org/project/masonry。你可能會有更多的運氣與砌體模塊。

+0

我已經嘗試了砌體模塊,那裏的問題......: -/ – Basti 2013-02-10 13:32:03

+0

如果砌體模塊不工作,你可能要考慮在發佈隊列中發佈。 – 2pha 2013-02-10 13:37:53

+0

我會再試一次,如果再次失敗,我會發布它,但無論如何,同位素插件應該工作: -/ – Basti 2013-02-10 13:48:54

0

也許有點晚了,但對我來說有一個更簡單的解決方案:

我同位素元素沒有固定的高度,因爲該JavaScript是所有圖像之前執行的是因爲這個加載和,元素沒有合適的高度!

加入後:

.isotope-item{ 
    height:300px; 
} 

代碼能夠計算出項目的位置,加載圖像,甚至之前!