gpt4 book ai didi

javascript - 混淆 jQuery 中的 wrapAll

转载 作者:太空宇宙 更新时间:2023-11-04 14:58:14 25 4
gpt4 key购买 nike

我在下面的几里里有几个p,也有https://jsfiddle.net/y5zn538e/

<ul>
<li>
<p> Hello 1</p>
<p> Hello 2</p>
<p> Hello 3</p>
</li>
<li>
<p> Hello 4</p>
<p> Hello 5</p>
<p> Hello 6</p>
</li>
</ul>

我想包装一个 div,使其像下面的第二个一样包装

<ul>
<li>
<p> Hello </p>
<div>
<p> Hello </p>
<p> Hello </p>
</div>
</li>
<li>
<p> Hello </p>
<div>
<p> Hello </p>
<p> Hello </p>
</div>
</li>
</ul>

我试过如下:

 $('ul li >p:not(:first-child)').wrapAll('<div></div>'); 

但是,这似乎不起作用..我的意思是它所做的一切都需要所有 p 并将其包装起来。我想在每个 li 内包装一个 div 吗?

最佳答案

The problem is, li > p:not(:first-child) it collects all child p tags except the first child.

so You need to use .each() function iterate to all li.

$('ul li').each(function(){
$(this).find('p:not(:first-child)').wrapAll('<div></div>');
});

  $('ul li').each(function(){
$(this).find('p:not(:first-child)').wrapAll('<div></div>');
});
div{
color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>
<p> Hello 1</p>
<p> Hello 2</p >
<p> Hello 3</p>
</li>
<li>
<p> Hello 4</p>
<p> Hello 5</p >
<p> Hello 6</p>
</li>
</ul>

关于javascript - 混淆 jQuery 中的 wrapAll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38472080/

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