在页面上经常需要删除某个标签,为了使删除时不那么僵硬,可以使用Jquery特效。
我之前一直想当然的认为可以像下面这种写法,先显示动画,再延迟,再进行真正的删除,实际上是无效的,下面的代码会直接删除标签,没有动画效果。
$("#"+userId).slideUp(500);
$("#"+userId).delay(500).remove();
实际上,仔细看一下Jquery官方文档,会发现要达到这种效果其实很简单,如下:
$("#"+userId).slideUp(500,function(){
$("#"+userId).remove();
});
$(selector).slideUp(speed,callback)
参数 | 描述 |
---|---|
speed | 可选。规定元素从可见到隐藏的速度(或者相反)。默认为 "normal"。 可能的值:
在设置速度的情况下,元素从可见到隐藏的过程中,会逐渐地改变其高度(这样会创造滑动效果)。 |
callback | 可选。slideUp 函数执行完之后,要执行的函数。 如需学习更多有关 callback 的内容,请访问我们的 jQuery Callback 这一章。 除非设置了 speed 参数,否则不能设置该参数。 |