gpt4 book ai didi

javascript - 删除父元素并重新 append 子元素

转载 作者:行者123 更新时间:2023-11-28 08:48:01 24 4
gpt4 key购买 nike

我有一个无序列表的导航,这是我正在遵循/必须遵循的简单结构,以便我的 jQuery 插件正常工作,因此使此代码结构成为必要:

<nav id="mp-menu" class="mp-menu">
<div class="mp-level">
<ul id="demo1" class="nav">
<li>
<a href="#">Devices</a>
<div class="mp-level">
<h2>Devices</h2>
<a class="mp-back" href="#">back</a>
<ul>
<li><a href="#">Mobile Phones</a></li>
<li><a href="#">Televisions</a></li>
<li><a href="#">Cameras</a></li>
</ul>
</div>
</li>
<li>
<a href="#">Magazines</a>
<div class="mp-level">
<h2>Magazines</h2>
<a class="mp-back" href="#">back</a>
<ul>
<li><a href="#">National Geographic</a></li>
<li><a href="#">Scientific American</a></li>
</ul>
</div>
</li>
...
</ul>
</div>
</nav>

我需要提供一个后备,并且我选择了另一个 jQuery 插件,它需要使用与上面不同的结构。我需要删除类名 .mp-level 的 DIV,但仍保留所有无序列表,包括 .mp-level 子列表。

结果只是无序列表,没有标题和 DIV'S。我下面的代码删除了正确的元素,但我的问题是重新插入子无序列表(特别是级别 2):

$( "#demo1 h2, .mp-back" ).remove();
$( ".mp-level ul li .mp-level" ).detach();
$( ".mp-level ul li" ).append('.mp-level ul li .mp-level ul');

有人对我删除其 parent 后如何重新插入子 UL 有任何建议吗?

最佳答案

你可以做到

$("#mp-menu").find(".mp-level").each(function(i,n){//each ".mp-level"
$(n).parent().append($(n).children());//append children to parent
$(n).remove();//remove actual div
});

http://jsfiddle.net/WBWwG/

关于javascript - 删除父元素并重新 append 子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19522746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com