Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery.remove()撤消?_Jquery - Fatal编程技术网

Jquery.remove()撤消?

Jquery.remove()撤消?,jquery,Jquery,有没有办法做到这一点?我正在使用一个分页插件,该插件读取ul中的li数,并确定要吐出的编号链接数。您可能需要使用.hide()并检查li是否可见 这可以通过 $(“li:visible”)如果不修改jQuery代码,我想不出任何方法来实现这一点。不过,修改可能不会那么难。您需要放入一个堆栈(或类似堆栈的结构),当调用.remove()时,将html与选择器或类似的东西一起放入其中,然后在.undo()上,将其放回 这是假设您确实需要撤消功能,而不仅仅是使用.hide()/.show()或.tog

有没有办法做到这一点?我正在使用一个分页插件,该插件读取ul中的li数,并确定要吐出的编号链接数。

您可能需要使用.hide()并检查li是否可见

这可以通过
$(“li:visible”)

如果不修改jQuery代码,我想不出任何方法来实现这一点。不过,修改可能不会那么难。您需要放入一个堆栈(或类似堆栈的结构),当调用.remove()时,将html与选择器或类似的东西一起放入其中,然后在.undo()上,将其放回

这是假设您确实需要撤消功能,而不仅仅是使用.hide()/.show()或.toggle()切换可见性的功能。

请参见

如果
#foo
#bar
的子项,则上述行没有任何效果。现在,将
$(“#foo”).remove()存储在变量(它是一个jQuery对象)中并重新追加它将作为练习留给您;-)


干杯,

如果您想删除()语义撤消,那就太好了。但是你可能想要@contracous和@Max Schmeling建议的,一个toggle()。

li:visible对我不起作用,因为我需要从
    中删除元素,但是如果你使用.hide()创建display:none并找到所有可见的元素,它将被有效地删除。jquery找不到它,用户也看不到它。如何将html放回原始位置。prepend()和.append()将限制项的位置
    $("#foo").remove().appendTo("#bar");