如何恢复使用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中,但它不在你的页面中