我目前正在使用以下内容:

var $alertdiv = $('<div id = "alertmsg"></div>');
$alertdiv.text("Profile Image Updated");
$alertdiv.bind('click', function() {
    $(this).slideUp(200);
    });
    $("#alertmsg").slideDown("slow");
    setTimeout(function() { $alertdiv.slideUp(200) }, 3000);
}


但是,如果再次更新配置文件,我会注意到代码每次都会添加一个新的alertmsg div,并且第一个设置为display:block,因此它始终可见。是否可以从代码中删除div(已尝试过:

var elem = document.getElementById("#alertmsg");
elem.parentNode.removeChild(elem);


(无济于事)还是只运行if / else语句,如果div已经存在,则不再创建它?我已经尝试过了,但是再一次,没有喜悦(我对JS不太满意)。

提前致谢

最佳答案

一种解决方案是在执行slideUp之后删除div。

setTimeout(function() { $alertdiv.slideUp(200, function() { $alertdiv.remove(); }) }, 3000);

关于javascript - 如果将div滑出视线,则将其删除?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21077923/

10-12 21:26