使用 jQuery 很容易解开元素,但使用纯 JS 就不是那么容易了。我花了最后 2 个小时尝试但没有结果。我阅读了 Google 和 SO 上的所有主题,但没有解决方案。他们中的大多数使用 jQuery,其他人没有交叉浏览。
到目前为止,我有:
var temp = document.createElement("div");
temp.innerHTML = "HERE COMES A COMPLEX HTML WITH SEVERAL DIVS, SPANS...";
document.insertNode(temp);
问题是我的 HTML 代码被插入,周围有“div”。我需要从父级中删除这个 div。我做了一个尝试,这可能是一个线索,但到目前为止没有帮助:
代替:
document.insertNode(temp);
我用
document.insertNode(temp.firstChild);
问题是只有 firstChild 被插入到文档中。
你可能会说我需要的东西没用,但事实并非如此!我有一个网站(如您所见)加载得非常快,充满了 css 效果,当您向下滚动页面时,它会加载和加载更多。如果我可以打开这个外部 div,那就太好了,因为我将在网站中插入至少 120 个组件。
我正在优化这个网站流量来平衡它,所以我会把它全部写成脚本。将有最小的html。所有的图像和剩余的 div 都将使用这种方法插入,所以最后我不希望 DOM 中有 120 个可以被删除的无用 div。我有我的理由,所以我在这里不讨论为什么,但我需要打开 div。
OBS:有一种方法正在使用outerHTML = innerHTML,但每次调用它都会重新绘制所有页面。所以这是一个可怕的想法。