2

我剛剛注意到一個問題,似乎影響所有版本的IE瀏覽器(測試7-10),但不是鉻或FF(Windows 7)。當我緩存一個jquery對象然後刪除它的原始目標時,就會出現這個問題。

下面的代碼實質上是重新排列div中的一些圖像,使得選定的圖像首先顯示,但我沒有使用持有者div,因此它們都是在原位完成的。我寧願不採取將html轉換爲字符串的方式使事情複雜化,我懷疑這可能是一個衆所周知的問題,我只是不知道搜索條件,所以如果是這種情況,請賜教!

$lightbox_gallery = $('.gallery-lightbox .lightbox-gallery'); 
$image   = $lightbox_gallery.find('img[data-id=' + image.id + ']').parent(); 
$image_after  = $image.nextAll(); 
$image_before  = $lightbox_gallery.find('> div:first').nextUntil($image); 

console.log($image.html()); //returns a string 
$lightbox_gallery.html(''); 
console.log($image.html()); //returns '' 

// this works fine in almost anything but IE. Maybe also safari on mac? 
$lightbox_gallery.append($image).append($image_after).append($image_before); 

編輯:使用克隆功能http://jsfiddle.net/27DKZ/4/

+0

託管複製問題我認爲,http://jsfiddle.net/27DKZ/以不同的方式運行在Chrome瀏覽器和IE瀏覽器 –

回答

0

什麼是您的HTML看起來像解決它?我從來沒有見過這樣的問題..請記住,IE無法處理console.log()函數..

+0

好吧在Chrome瀏覽器試試這個,然後在IE瀏覽器中,我認爲任何版本都可以。 http://jsfiddle.net/27DKZ/ –