1

したがって、時々、私の出力は次のようになります。

<p><img src="someimage.jpg" /></p>
<p>A new paragraph</p>

それ以外の場合は、次のようになります。

<img src="someimage.jpg />
<p>A new paragraph</p>

マークアップの最初の p 要素がイメージ タグを囲む場合、何らかの "if" ステートメントを記述しようとしています。

$j("p:eq(1)")

それ以外の場合は、プルします:

$j("p:eq(0)")

または、すべての img タグを見つけることができ、それが囲まれている場合

タグを削除し、それらを削除しますが、どちらが優れているか、またはどちらかを行う方法がわかりません...

次のことを試しましたが、うまくいきません。

if($j("img:eq(0)").parent().get(0).tagName == "p") {
      var pt = $j("p:eq(1)");
} else {
      var pt = $j("p:eq(0)");
}
4

3 に答える 3

1

これを試して:

var paragraphsWithoutImages = $('p').not(':has(img)')

(実例)

于 2009-10-04T03:00:51.813 に答える
1

これにより、限られたサンプルに適合する、画像を含まない段落が取得されます。

var pt = $("p:not(:has(img))");

実際のマークアップはこれよりも複雑になる可能性がありますが、これには多くのバリエーションがあります。

于 2009-10-04T03:04:13.070 に答える
0

$('img').unwrap('p');

最初の親要素を削除したい場合は、.unwrap(); を使用してください。

PS: 互換モードで jQuery を使用している場合は注意し、必要に応じて $ を $j に変更します。

于 2011-03-30T22:27:25.637 に答える