使用jQuery在div中包装多个元素

时间:2017-11-23 14:51:22

标签: jquery html css

我试图用类.fsElement在每个div中包含两个元素,每个元素使用两个变量。我的代码如下所示:

 $('.lin-stats .fsElement').each(function(){

            var head = $(this).find('h3');
            var parag = $(this).find('p');

  });  

如何使用wrapAll()函数将这两个变量包装在一个div中?

2 个答案:

答案 0 :(得分:2)

最简单的是使用一个find()和2个选择器

$('.outer').each(function(){
  $(this).find('h3, p').wrapAll('<div class="inner">')
})
.inner{color:red; border:1px solid #ccc}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="outer">
 <h3>Heading </h3>
 <p>text</p>
</div>
<div class="outer">
 <h3>Heading </h3>
 <p>text</p>
</div>

答案 1 :(得分:1)

在包装它们之前,您需要将它们与add函数一起添加:

var head = $('h3');
var parag = $('p');

head.add(parag).wrapAll('<div id="wrapper"></div>')

console.log($('#wrapper').text());
#wrapper{
  border: 2px solid red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h3>Title</h3>
<p>Text</p>