如何恢复使用jQuery删除的元素?
如果使用删除元素
$('.notification').remove();
我们如何创建它。
你无法恢复那个特定的实例 。 使用$.remove()
将其从DOM中删除。 您可以创建它的克隆,在DOM中移动它,隐藏它等等。 根据您的项目需求,您可能还有许多其他选择。
如果您对该特定实例不太感兴趣,可以创建一个新实例。 假设这是一个带有声明的div:
$("").addClass("notification").text("I exist!").appendTo("body");
如果你想保留该特定元素的副本,你可以$.clone()
它并删除原始:
var clone = $(".notification").clone(); // making zeh' clones! $(".notification").remove(); // original is gone $("body").append(clone); // appears to have returned
查看jQuery 1.4方法.detach()
。 它允许您从DOM中“删除”元素并保存它们,以便以后可以重新插入它们。
detach()执行remove()的操作,但remove的不同之处还在于会删除元素上的任何事件处理程序。 只要在某个点上进行引用,就可以平等地删除或分离元素,并将其返回到DOM
noti = $('.notification').remove(); $('body').append( noti ); // later
更容易的是使用.replaceWith()来返回被替换的内容。 什么都不做,它取代了什么。
var backUpReplaced = $('.notification').replaceWith('');
现在你的元素存储在var中,但它不在你的页面中