我有四个带有 eventlistener onclick 的 div,调用一个 js 函数,它只执行以下操作:
this.parentNode.removeChild(this);
我希望它删除我点击的 div,但它没有。相反,它会删除最后一个孩子并将之后给出的 id 更改为已删除孩子的 id(第一次单击,最后一个孩子),并通过进一步单击其他 div 将给定的 id 倒数为一个。从最后一个到第一个删除数组中的子节点。
我尝试了很多变种,例如
document.getElementById('parentElementName').removeChild(this.gettAttribute('id'));
或者
parent =document.getElementById('parentElementName');
to_be_removed = document.getElementById(this.gettAttribute('id');
parent.removeChild(to_be_removed);
或使用 childNodes // id = 1,2,3,4
to_be_removed =document.getElementById('box_content').childNodes[this.getAttribute('id')];
parent =document.getElementById('box_content');
parent.removeChild(to_be_removed);
奇怪的是我可以成功地改变可见性或背景颜色:
document.getElementById('box_content').childNodes[this.getAttribute('id')].style.visibility='hidden';
或者