2011-11-21 25 views
4

我想克隆與jQuery的項目,然後爲其設置動畫。 原始項目中有一個圖像,該圖像在克隆之前已經加載並顯示。 但是,在克隆的項目中,圖像僅顯示動畫的一半左右。克隆項目的圖像,圖像需要時間出現

下面是該項目的HTML克隆:

<div class='item'> 
    <div class='picture'><img src='img/picture1.jpg'></div> 
    <h3>Item</h3> 
    <p class='price'>$25</p> 
    <div class='desc'>Image description...</div> 
</div> 

而jQuery的我使用克隆它:

itemObject = $(".item"); // Code has proper selector to choose appropriate item 
newItemObject = itemObject.clone() 

// Overlay new object over original object 
newItemObject.appendTo('#main').css({ 
    'position': 'absolute', 
    'top': itemObject.offset().top, 
    'left': itemObject.offset().left 
}); 

// Do animation on newItemObject... 

這是一些克隆與圖像元素時,總是發生在?我在做什麼有什麼問題?我怎樣才能解決這個問題?

+2

是否已確認該圖像的頭讓瀏覽器緩存它? –

+2

不要雙重包裝,這也會工作得很好:'newItemObject = itemObject.clone()'但是它不能解釋問題 - 你如何動畫? –

+0

@JonasH謝謝!我用PHP生成圖像,並沒有緩存任何東西。修正了這一點,它現在工作正常! – Chaim

回答

3

確認圖像的標頭允許瀏覽器緩存它。 (感謝Jonas H

(這些圖像是被從一個沒有緩存它們的PHP文件送達,因此克隆當他們重新加載。)