首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >.remove()是否忽略.delay()?

.remove()是否忽略.delay()?
EN

Stack Overflow用户
提问于 2011-08-14 00:09:44
回答 3查看 174关注 0票数 2

Here这里有一个例子:

代码语言:javascript
运行
复制
<div id='example'>
    ciao
</div>

$('#example').fadeOut(600).delay(600).remove();

我想要淡出元素,然后删除它,但看起来.remove()忽略了.delay() (因此该元素立即被删除)。

我该怎么解决这个问题呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-14 00:12:15

.remove与动画无关,因此.delay没有任何效果。

您可以做的是传递一个函数,该函数在动画结束时执行(回调参数-请参阅http://api.jquery.com/fadeOut/):

代码语言:javascript
运行
复制
$('#example').fadeOut(600, function() {
    $(this).remove();
});

http://jsfiddle.net/pimvdb/Sny7P/1/

票数 6
EN

Stack Overflow用户

发布于 2011-08-14 00:12:18

改为指定回调

代码语言:javascript
运行
复制
$('#example').fadeOut(600, function() { $(this).remove(); });
票数 4
EN

Stack Overflow用户

发布于 2011-08-14 00:12:49

不使用delay,而是向fadeOut传递一个回调:

代码语言:javascript
运行
复制
$('#example').fadeOut(600, function() {
    $("#example").remove();
});
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7051654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档