0

我正在制作一个小书签并且有点卡住了,我正在尝试在一些文本周围包裹一个跨度。问题是文本中有相当多的brs,这让我很头疼。

由于它是一个书签,我只能使用 jQuery 来更改 HTML。我只想将文本包装在媒体块下方(这样我就可以截断它)而不是媒体块本身。

当前的 HTML 结构如下:

<div class="Message">

  <div class="MediaBlock">
    <h2>name</h2>
  </div>

  This is the text
  <br> I want to wrap
  <br> With a span, class more &nbsp

</div>

我应该提到,与 br 一起还有链接,它们也是一个页面上的多个消息容器。

消息也是可变长度的,它的用户生成

4

1 回答 1

2
$('.Message').contents().filter(function(i) {
    return (this.nodeType === 3 || this.nodeName.toLowerCase() === 'br') && i!=0;
}).wrapAll('<span />');

小提琴

于 2013-05-24T02:15:20.650 回答