如何在新div中包装文本?

问题描述 投票:4回答:3

我的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" />')

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

javascript jquery wrapper gettext
3个回答
2
投票

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

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

Working Demo


2
投票

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

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

http://jsfiddle.net/4MCen/


1
投票

另一种方案

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

Working Demo

© www.soinside.com 2019 - 2024. All rights reserved.