Это быстро уничтожит узел и все его дочерние элементы:
var _dummyNode;
var destroy = function(node){
if(!_dummyNode) _dummyNode = document.createElement('div');
_dummyNode.appendChild(node.parentNode.removeChild(node));
_dummyNode.innerHTML = "";
}
destroy(nodeToDestroy);
Он создает фиктивный DIV, который никогда не добавляется в документ, поэтому не отображается. Узел удаляется из своего родителя и добавляется в пустышку. Затем он уничтожается с помощью innerHTML.
Однако - это не удастся, если у вас все еще есть переменные ссылки на узлы. Вы должны использовать хорошую библиотеку Ajax и использовать только соответствующий addEventListener для прикрепления событий. Вы не должны делать:
<div onclick="myFunction();">click me</div>
Поскольку это не хорошее разделение проблем, его трудно поддерживать, оно не передает события должным образом, и вы можете присоединить только один метод. И если вы делаете это таким образом, вам, по сути, нужно заниматься сбором мусора.