如何在新div中包装文本?

时间:2013-04-17 17:45:37

标签: javascript jquery wrapper gettext

我的HTML:

<div class="mainDiv">
  <p>This is a paragraph</p>
  <div class="innerDiv">This is a div</div>
  This is what I want to wrap
</div>

我想要的是什么:

<div class="mainDiv">
  <p>This is a paragraph</p>
  <div class="innerDiv">This is a div</div>
  <div class="wrapper">
    This is what I want to wrap
  </div>
</div>

我试过了:

$('.mainDiv').find(".innerDiv").next().wrap('<div class="wrapper" />')

但它不起作用。我怎样才能达到上述效果?

3 个答案:

答案 0 :(得分:2)

您可以使用jQuery contents()slice方法:

$('.mainDiv').contents().slice(-1).wrap('<div class="wrapper"/>');

Working Demo

答案 1 :(得分:2)

使用nextSibling的另一种解决方案:

$($('.mainDiv .innerDiv')[0].nextSibling).wrap('<div class="wrapper">');

http://jsfiddle.net/4MCen/

答案 2 :(得分:1)

另一种解决方案

$('.mainDiv').contents().last().wrap('<div class="wrapper"/>');

Working Demo