[英]How to remove the last element from JQuery array?
我想选择一些DOM元素到克隆对象中,然后我要删除最后一项。 在Chrome控制台中尝试后,我发现克隆的长度没有减少。
Chrome控制台中的示例:
crumbs = $("span",$("div[style='width:390px;background-color:white;'")[0]).clone();
jQuery.fn.jQuery.init [114]
crumbs.last().remove()
[...]
crumbs.length
114
如您所见,长度仍然是114个元素。 我想念什么?
crumbs.last().remove()
从DOM中删除最后一个匹配的元素,但不会从jQuery对象中删除它。
要从jQuery对象中移除元素,请使用slice
:
var withoutLastOne = crumbs.slice(0, -1);
¹实际上,这将创建一个与少一个元素匹配的新对象,而不用修改现有对象。 您通常不会在意区别,但应该注意这一点。
正如人们所说, .remove()
从DOM中删除元素。 除了在最终结果上使用slice
,另一个选择是在克隆元素之前使用jquery的过滤:
crumbs = $("span",$("div[style='width:390px;background-color:white;'")[0]).not(':last').clone();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.