Zac*_*ady 5 javascript jquery children list wrapall
所以我试图在div中包含一系列子元素,以便在组中操作它们; 试图将每个小组定位在不同的地方.场景是我有一个随机生成li标签的列表,无论有多少出现我需要分别操作每一组十个.
为了解决这个问题,我使用了一份书面清单:
$("ul li ul li:nth-child(n+11)").wrapAll("<span class='shift' />");
Run Code Online (Sandbox Code Playgroud)
现在我已经能够使用以下方法轻松地将孩子们包裹在div中.
<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>
Run Code Online (Sandbox Code Playgroud)
但这当然不是我需要的.
这是我正在处理的代码.
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' />");
}
Run Code Online (Sandbox Code Playgroud)
这种工作但它创建了shift类的嵌套实例.
我需要单独的包装器div.如果我要编写代码,它将是:
$("ul li ul li:nth-child("+c+"<n<"+(c+10)+")").wrapAll("<span class='shift' />");
Run Code Online (Sandbox Code Playgroud)
但显然这不起作用.其他人之前做过类似的事.一直在搜索没有成功.
你可以试试.slice方法:
// note: different from nth-child, slice is 0-based position
$("ul li ul li").slice(c, c+10).wrapAll("<span class='shift' />");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3921 次 |
最近记录: |