jQuery& IE7 +缓存$对象的意外行为

时间:2013-07-14 05:09:37

标签: javascript jquery internet-explorer internet-explorer-8 internet-explorer-9

我刚刚注意到一个问题,似乎影响了所有版本的IE(测试7-10),但没有影响Chrome或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/

解决它

1 个答案:

答案 0 :(得分:0)

您的HTML是什么样的?我从来没有见过像这样的问题..请记住,IE无法处理console.log()函数..