我有这个功能,可以即时创建一个 DIV。但是现在,我想在 onclick 事件中销毁这个对象,但我不知道如何做。
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/