【发布时间】:2015-07-23 06:14:54
【问题描述】:
我正在尝试使用 .remove() jQuery 方法从 DOM 中删除一个元素
基本上我正在解析一个列表并删除某些元素。然后紧接着,我重新解析列表以对其余元素进行一些处理。
但是列表大小的简单打印输出给我的印象是要过滤掉的元素没有被删除
$list = $(".elements_list");
alert( $list.size());
$list.each(function(){
if ( $(this).data("quantity") == 0)
{
$(this).slideUp(1000,function(){
$(this).remove();
});
}
});
change_background_colors();
在这种处理之后,我调用了另一个开头有以下代码的函数:
function change_background_colors() {
$list = $(".elements_list");
alert($list.size());
...
}
我在删除元素之前和之后得到相同大小的列表...
我的方法有问题吗?
谢谢!
【问题讨论】:
-
上下文是什么意思?抱歉,我是 jQuery/Javascript 新手...
-
他的意思是你去remove的时候检查
this的值。 -
如果你在动画完成之前调用它,元素仍然存在。告诉我们您将第二次尺寸检查放在哪里
-
我编辑了我的问题以显示我在哪里放置尺寸警报
标签: javascript jquery dom