gpt4 book ai didi

javascript - 在 div 中包装子元素的范围

转载 作者:数据小太阳 更新时间:2023-10-29 05:52:57 25 4
gpt4 key购买 nike

我试图将一系列子元素包装在 div 中,以便分组操作它们;试图将每个组定位在不同的位置。场景是我有一个随机生成 li 标签的列表,无论出现多少标签,我都需要分别处理每组十个标签。

为了解决这个问题,我使用了一个书面列表:

$("ul li ul li:nth-child(n+11)").wrapAll("<span class='shift' />");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="access">
<div class="menu">
<ul>
<li>
<p>Hello</p>
<ul>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff2</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>
<li>Stuff3</li>

</ul>
</li>
</ul>
</div>
</div>

但这当然不是我需要的。

这是我现在正在处理的代码。

var count = $("ul li ul li").length;
for(var c = 11; c<=count;c+=10){
$("ul li ul li:nth-child(n+"+c+")").wrapAll("<span class='shift' />");
}

这种方法可行,但它会创建 shift 类的嵌套实例。

我需要单独的包装 div。如果我要编写代码,它将是:

 $("ul li ul li:nth-child("+c+"<n<"+(c+10)+")").wrapAll("<span class='shift' />");

但显然那是行不通的。其他人以前做过这样的事情。一直在寻找,但没有成功。

最佳答案

你可以试试 .slice方法:

// note: different from nth-child, slice is 0-based position
$("ul li ul li").slice(c, c+10).wrapAll("<span class='shift' />");

关于javascript - 在 div 中包装子元素的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11406109/

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