删除包装div并保留所有子div完整?
我有一个包装器div,里面有几个子div,并且这些子div内也有标签。 我想删除包装器div。 我已经考虑过JQuery的解包,但似乎我需要指定子div来告诉Jquery要解包的内容。 如果有几个孩子,这会有效吗?
所以,代码看起来像:
任何帮助,一如既往,表示赞赏。
谢谢。
unwrap
方法可以正常工作(您可以选择任意/任意数量的兄弟姐妹):
$("#innerDiv1").unwrap();
从文档(重点补充):
匹配的元素( 以及它们的兄弟,如果有的话 )在DOM结构中替换它们的父节点。
添加到@james
你可以做这样的事情
var innerDivs = $("#wrapper").html(); $("#wrapper").remove(); $("body").append(innerDivs); // you will need to change this to append to whatever element you like
jsfiddle的例子
function unwrap(el){ var parent = el.parentNode; // get the element's parent node while (el.firstChild){ parent.insertBefore(el.firstChild, el); // move all children out of the element } parent.removeChild(el); // remove the empty element }
代码是直接的,比相应的jQuery方法$ .unwrap()快得多。
资料来源: https : //plainjs.com/javascript/manipulation/unwrap-a-dom-element-35/