我有一个像这样的HTML结构
<aside class="l-region l-region--sidebar-first">
<div></div>
<div></div>
</aside>
旁边的两个div确实有类和子元素但是为了问题你不需要知道它们是什么。在DOM就绪时,我将两个内部div包装在一个新的div中,如此
<aside class="l-region l-region--sidebar-first">
<div class"wrapping-div">
<div class="inner-div-one"></div>
<div class="inner-div-two"></div>
</div>
</aside>
我没有使用wrap()函数来获取.wrapping-div中的两个div,我创建了div,将它附加到旁边的DOM中,然后将两个内部div附加到该新元素我创造了。
当我尝试解包()这两个div时,.wrapping-div和.l-region - sidebar-first都从DOM中删除。 JS打开下面的元素。
$(function() {
$('.inner-div-one').unwrap();
$('.inner-div-two').unwrap();
});
我认为unwrap()应该删除一个父母。为什么要删除这两个,有没有人知道如何阻止它?
干杯。
答案 0 :(得分:3)
您的代码实际上正在运行,因为它可以正常工作。在$('。inner-div-one')的第一个实例中.unwrap();你正在删除父div,在第二个实例中你删除了标签。它实际上一次只删除一个父项。我认为你不需要那里的第二个声明。
答案 1 :(得分:0)
嗯,就像我想的那样。你打电话给unwrap
两次,就是这样。
$(function() {
$('.inner-div-one').unwrap();
});
就足够了,因为它们都能解开它们。