dom_exeStartPrev.outerHTML = dom_exeStartPrev.outerHTML + div.innerHTML
我想让 div 里面的元素全部添加到dom_exeStartPrev
的后面,但是按照我上面写的,最后 console 出来的dom_exeStartPrev
还是原来的,并没有加上 div 里面的元素,请问这个如何解决
1
Twinkle 2021-08-13 10:47:53 +08:00
dom_exeStartPrev.parentNode.insertBefore(div, dom_exeStartPrev.nextSibling)
|
2
h503mc 2021-08-13 10:54:14 +08:00 via Android
试试 dom_exeStartPrev.insertAdjacentElement("afterend",div)
如果是要让 div 在 dom_exeStartPrev 底下,那么就把 afterend 换成 beforeend 参见 https://developer.mozilla.org/zh-CN/docs/Web/API/Element/insertAdjacentElement ps:你应该打印 dom_exeStartPrev.parentNode 才对 |
3
aglsv OP @Twinkle 我这个是只需要 div 里面的元素,而且我之前这么写如果 dom_exeStartPrev 是最后一个元素的话他会报错
|
4
aglsv OP @h503mc 我只需要 div 里面的的内容,不需要 div 这个标签,需要它里面的子元素,我之前也使用这个方法来着,但是因为不知道该如何只插入 div 里面的内容,所以就换成了这个
|
5
xingyuc 2021-08-13 12:01:32 +08:00
childrenElement ?
|
6
h503mc 2021-08-13 14:48:02 +08:00 via Android
[...div.children].forEach(element=>dom_exeStartPrev.insertAdjacentElement("afterend",element));
其他同 #2 |