Javascript 从浏览器中完全删除DOM元素,而不仅仅是在console.debug中

Javascript 从浏览器中完全删除DOM元素,而不仅仅是在console.debug中,javascript,jquery,dom,dom-manipulation,removechild,Javascript,Jquery,Dom,Dom Manipulation,Removechild,我需要删除或修改OpenLayers库创建的元素。如果删除它,如果按id显示,我将无法在console.debug中再看到它,但它们仍存在于浏览器中 console.debug($("#OpenLayers_Geometry_Point_85")); 很好,我可以在控制台中看到输出。当我将鼠标悬停在它上面时,浏览器中的元素会高亮显示 $("#OpenLayers_Geometry_Point_85").remove(); 尝试删除元素时,其行为基本上与: var img = document

我需要删除或修改OpenLayers库创建的元素。如果删除它,如果按id显示,我将无法在console.debug中再看到它,但它们仍存在于浏览器中

console.debug($("#OpenLayers_Geometry_Point_85"));
很好,我可以在控制台中看到输出。当我将鼠标悬停在它上面时,浏览器中的元素会高亮显示

$("#OpenLayers_Geometry_Point_85").remove();
尝试删除元素时,其行为基本上与:

var img = document.getElementById("OpenLayers_Geometry_Point_85");
img.parentNode.removeChild(img);
console.debug($("#OpenLayers_Geometry_Point_85"));
现在console.debug中的第二个输出不同了,它是空的,因此已被删除。但是,在浏览器中我仍然可以看到它。将鼠标悬停在第一个输出上不会再突出显示任何内容。当检查元素时,它会显示已删除的代码!还是它还在那里?

请注意,我已经检查了副本。我在文档完全加载后执行操作。元素是SVG类型的,但这应该无关紧要,或者是真的吗?



问题:如何从浏览器中完全删除该元素?

您是否有一个我们都可以使用的简单测试?也许是一个?用你的标记做一个JSFIDLE并描述你期望的结果。什么是parentNode?它是SVG元素还是某种征服元素,用作图像的包装器?如果是后者,则我可能是附加到parentNode的事件处理程序,而不是实际的映像所以它是一个包装器。如何找到它是否是事件处理程序?实际上,g元素只是用于对SVG形状进行分组: