2012-05-05 9 views
0

私はclass = "nested"を使ってdiv内のどこかの深さに(たぶん1〜2,3つ、それは時間の経過とともに変化します)あることを知っています。どのようにJQueryを使用して任意の深さにその要素を見つけるには?JQueryを使ってどの深さのクラスでも要素を見つける方法は?

私は

var nest=$('#container_div').find('.nested');ようにしようとしたが、それは動作しません。

+2

アポストロフィが欠けている以外、コードは正常に動作するはずです。 'find()'はどれほど深くても要素を探します。 – kapa

+0

見積もりがありません。これはうまくいきます: '$( '#container_div .nested')'( '.find()'は必要ありません)。 –

答えて

2

と楽しみのために別の構文:

var nest = $('.nested', '#container_div'); 

私はjQueryのに.nestedクラスを探しにどこのコンテキストを与えます。

+0

なぜですか?与えられたコンテキストjQueryは内部的には単に内部的にfind()を実装しています:セレクタのコンテキストは.find()メソッドで実装されているので$( 'span'、this)は$(this).find( 'span' )。だから、 'find()'に任せておく方が簡単です。 –

+0

さて、これを行うには別の方法です。それがより効果的か何かを言っていない:) –

4

var nest=$('#container_div').find('.nested');忘れてしまったことがありますか?

+0

'$( '#container_div .nested')'、確かに? –

2

他の答えと間違って何もないが:

var nest=$('#container_div .nested'); 

がより簡潔です。セレクタをスペースで区切ることは、セレクタ内でfindと同じです。あなたが唯一の直接の子に制限したい何らかの理由場合は、

var nest=$('#container_div > .nested'); 
関連する問題