我具有此功能,可以即时创建DIV。但是现在,我想在onc​​lick事件中销毁该对象,但我只是不知道如何。

function creatediv(id) {

    var newdiv = document.createElement('div');
    newdiv.setAttribute('id', id);
    newdiv.onclick=function(){this=null;};  //bad function
    document.body.appendChild(newdiv);

}

我想念什么?

谢谢

最佳答案

仅将其设置为null不会破坏它。您需要从文档树中删除它,同时确保没有指向它的引用。

function creatediv(id) {
    var newdiv = document.createElement('div');
    newdiv.setAttribute('id', id);
    newdiv.onclick=function(e) {
        this.parentNode.removeChild(this);
    };
    document.body.appendChild(newdiv);
    newdiv = null;//required in IE to prevent memory leak
}

关于javascript - 在javascript中,对象如何自毁于事件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/548188/

10-09 19:47