jquery - 添加 DOM 元素然后将其删除

标签 jquery

我需要在父 div 中添加一个子 div,然后在 x 秒内删除子 div。

可以将多个子 div 添加到父 div 中。

识别和删除子 div 的最佳方法是什么?

$("#parent_div").prepend("<div>"+msg+"</div>");

最佳答案

通过保留对它的引用:

function doTheChildDivThing() {
    var child = $("<div>" + msg + "</div>");
    $("#parent").prepend(child);
    setTimeout(function() {
        child.remove();
    }, 1000);
}
<小时/>

在下面回复您的评论:

why delay() (instead of setTimeout) is not working in that case?

delay与效果队列一起使用。 remove 不是与效果相关的方法。您当然可以将 delayeffects methods 之一一起使用。不过,就像 slideUp 一样。然后,您可以在effects方法的完成回调中删除子级,如下所示:

function doTheChildDivThing() {
    var child = $("<div>" + msg + "</div>");
    $("#parent").prepend(child);
    child.delay(1000).slideUp(function() {
        child.remove();
    });
}

关于jquery - 添加 DOM 元素然后将其删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14817422/

相关文章:

jquery启动时出错

javascript - Jquery 条件适用于除 safari 之外的所有浏览器

jquery - 当没有更多数据时,如何禁用 Jquery flot 中的平移?

ajax - ASP.NET MVC JSON 对象可以通过带有动态类型参数的参数传递给 Controller ​​吗?

android - Fancybox:无法在 Android 手机上滚动

javascript - 我怎样才能得到相对定位的 parent

javascript - 单击 div 后删除脚本

javascript - 如何使用 jQuery 清除输入数组的所有元素

jquery - 向 jquery 模型添加关闭按钮(BlockUI)

jquery - SEO 友好的<ul>-基于下拉菜单