0
<div id="editor">
  text
  <div id="wrap"> <!-- here -->
    <img src="images/1.jpg"/>
  </div>
  text</p>
  <div id="wrap"> <!-- and here -->
    <img src="images/3.jpg"/>
    <img src="images/4.jpg"/>
    <img src="images/5.jpg"/>
    <img src="images/6.jpg"/>
  </div>
</div>
4

2 に答える 2

4

<img>要素のグループをラップしたいと思います。

もしそうなら、これを行います:

例: http: //jsfiddle.net/patrick_dw/RXFVM/1/

$('#editor > img:not(img + img)').each(function() {
    $(this).nextUntil(':not(img)').andSelf().wrapAll('<div class="wrap"></div>');
});
  • 'img:not(img + img)':画像が前に付いていない画像を取得する
  • .each():それらを繰り返します
  • .nextUntil(':not(img)'):画像である限り、次のすべての要素を取得します
  • .andSelf():元の画像を含める
  • .wrapAll('<div class="wrap"></div>'):グループをラップする

ページでIDを再利用できないため、に変更id="wrap"したことに注意してください。class="wrap"


編集:壊れていない画像を使用するようにサンプルリンクを更新しました。

于 2010-12-19T00:17:01.220 に答える
0

私が理解しているように、jqueryで画像をラップしたいですか?

まあそれはこのように見えるかもしれません

$('img').wrap('<div id="wrap" />');

しかし、より良い答えが必要な場合は、実際にはもっと正確にする必要があります

于 2010-12-19T00:13:07.143 に答える