0

我正在ul为图像滑块加载一个,但是当滑块关闭时我需要删除图像(ul)并恢复到原始状态(在 javascript 操作之前),因为我稍后需要为另一组不同的图片。

这是我加载滑块的方式。

 var get_images = [ "show_1.jpg", "show_2.jpg", "show_3.jpg", "show_4.jpg"];

 $.each(get_images, function(i,img){
 $('#container ul').append('<li><a href="#" class="thumbnail"><img src="'+img+'"/></a></li>'); 
});
4

3 回答 3

2

我认为这可能是您正在寻找的:

var get_images = ["show_1.jpg", "show_2.jpg", "show_3.jpg", "show_4.jpg"];
var original = $('#container ul').html();
$.each(get_images, function (i, img) {
    $('#container ul').append('<li><a href="#" class="thumbnail"><img src="' + img + '"/></a></li>');
});
$("#revert").click( function() {
    $('#container ul').html(original);
});

还原按钮用于演示目的。这个想法基本上是您保存原始内容,以便以后可以在需要时恢复到它。

小提琴

于 2013-08-19T17:53:35.123 回答
1

如果ul最初是空的,您可以使用.empty()它来使其恢复到该状态。

$('#container ul').empty()
于 2013-08-19T17:45:32.957 回答
1

如何获取您添加的最后一个并像这样删除它:

 $('#container ul li:last').remove();

如果您添加了 3,则重复该行 3 次。每个人都获得最后添加的元素并将其删除。


其他方式

您还可以跟踪添加的内容:

var addedList = [];

$.each(get_images, function(i,img){
    var added = $.parseHTML('<li><a href="#" class="thumbnail"><img src="'+img+'"/></a></li>');
    $('#container ul').append(added);
    addedList.push(added);
});

使用以下内容删除:

for (var i=0; i < addedList.length; ++i) {
    $(addedList[i]).remove();
}
addedList = [];
于 2013-08-19T17:52:00.693 回答