13

クリック機能によって「選択」された要素のすぐ隣ではない div 要素を選択する方法を探しています。

<div id="click">(siblings)</div><div>text</div><div id="get this one"></div>

ここで、「get this one」という ID を持つものを選択したいと思います - 私のコードでは、この ID は利用できません。すべての div には同じクラスがあり、兄弟があります。
3 番目のものを選択することもできますが、$(this).next().next()それは最善の方法ではないと思います。
また、クリックされたものの前に s が存在する可能性があるdivため、必ずしも最初のものであるとは限りません。

セレクターを試しました:nth-childが、解決策が見つかりませんでした。
後で、クリックした後に 13 番目 (または 23 番目、65 番目など) を選択することもできます。これは、この問題に対してかなり動的な解決策が必要であることを意味します。

助けてくれてありがとう、
フィル

4

2 に答える 2

22

次のように、動的アプローチに.nextAll()withを使用できます。.eq()

$(this).nextAll().eq(1) //0 based index, this would be .next().next()

これにより、n兄弟を前進させることができます。これは、あなたが求めているもののようです。

于 2010-09-09T12:03:00.643 に答える
0

うまくいく$(this).parent().find('div').eq(2).attr('id')はずです。

UPDATE( find('div') を追加)

于 2010-09-09T12:02:27.747 に答える