6

HTML は次のような構造になっています。

<div id="myDiv"></div>
<img src="" />
<p></p> // I want to select this element 
<h1></h1>
<p></p>
<h2></h2>

私の開始要素に基づいて、<div id="myDiv">さらにいくつかの<p>兄弟がありますが、コードに見られるように、最初の兄弟だけが必要です。

どうすればこれを達成できますか?

4

3 に答える 3

24
jQuery('#myDiv').siblings('p:first')

また

jQuery('#myDiv').siblings('p').first()

トリックをするだろう

于 2013-11-13T08:11:48.973 に答える
3

これを試して:

jQuery('#myDiv ~ p').first()

または純粋なcssセレクター(パフォーマンスはチェックされていませんが、.querySelectorAllを使用するため、最速のソリューションになる可能性があります):

jQuery('#myDiv ~ p:first-of-type')
于 2013-11-13T08:15:46.110 に答える
-1

Olivier が示唆しているように、 .first() または p:first があなたのニーズに合っているでしょうが、より一般的な解決策は .eq(n) - ここで、n は 0 から始まる数値です。

たとえば、#myDiv の最初の兄弟段落を選択するには、次のようにします。

    jQuery('#myDiv').siblings('p').eq(0);

3 番目の段落をターゲットにするには、番号を変更するだけです。0 から始まるので、目的のターゲットから効果的に 1 を奪う必要があることに注意してください。

    jQuery('#myDiv').siblings('p').eq(2);
于 2013-11-13T08:17:49.743 に答える