在我当前的项目中,我收到了 xhr 请求,我将它们放在像这样的元素之后:el.insertAdjacentHTML('afterend', "foo bar");
但我还没有找到在给定之后删除所有内容的方法element
,否则标记将被填满。
dom
我可以在它周围包裹另一个容器,但出于性能原因,我尝试使用尽可能少的元素。
我找到了几个解决方案JQuery
,这也不是一个选项,因为它太大了。
假设我有一个nav
元素位于其父容器的顶部,我想在它之后放置东西,但在我必须删除之前存在的东西之前。
有任何想法吗?提前致谢
在网上搜索,在这里,刚刚找到 jq 解决方案,没有 vanilla js。
JS
el = document.querySelector("nav.mainNav");
el.insertAdjacentHTML('afterend', "foo bar");
HTML
<div>
<nav></nav>
<nav></nav>
<nav class="mainNav"></nav>
{...CONTENTSHOULD BE PLACED HERE, PLACING WORKS, REMOVING NOT...}
</div>
JSII - 我正在尝试这样的东西,但它似乎并没有选择所有元素。建议?
var el = document.querySelectorAll("html > body >
nav.mainNav + *");
for ( var i = 0; i < el.length; i++ ){
el[i].remove();
}
我找到了自己的解决方案,感谢四位帮助!
var el = document.querySelectorAll("html > body > *:nth-child(1n+3)");
for ( var i = 0; i < el.length; i++ ){
el[i].remove();
}