我有一些像
这样的元素<div id="one">ONE</div>
<div id="two">TWO</div>
<div id="three">THREE</div>
<div id="four">FOUR</div>
<div id="five">FIVE</div>
现在我想在ID为“two”和“three”的两个元素周围包装一个DIV标记,以获得这个:
<div id="one">ONE</div>
<div class="wrapped">
<div id="two">TWO</div>
<div id="three">THREE</div>
</div>
<div id="four">FOUR</div>
<div id="five">FIVE</div>
使用“wrapAll”函数,我只能定位具有相同类的元素:
$(document).ready(function(){
$( "div" ).wrapAll( "<div class='wrapped' />");
});
我知道我可以先将两个DIV与jquery放在同一个类中,然后将它们包起来,但是我希望有更优雅的方式。
答案 0 :(得分:3)
您可以使用$('#two, #three').wrapAll('<div class="wrapped" />')
<强> jsFiddle example 强>
答案 1 :(得分:2)
只需选择您想要的两个和wrapAll()。
来自docs(强调我自己):
.wrapAll()函数可以接受任何可能的字符串或对象 传递给$()函数以指定DOM结构。这种结构 可以嵌套几个级别深,但应该只包含一个inmost 元件。 结构将围绕中的所有元素 匹配元素的集合,作为单个组。
小提琴:https://jsfiddle.net/93dyokr0/1/
$('#two, #three').wrapAll( "<div class='wrapped' />");