2012-04-21 11 views
1

私は、下のjQueryコードで見られるように、私のテーブルのtd内の最初のdivを指しています。td内の最初のdivを見つける

$('table tr td div').css("position", "relative"); 

しかし、私はので、私はこれを試したことのいくつかの問題を持っている:

$('table tr td').parents('div:first').css({position:'relative'}); 

しかし、この1つはどちらか正常に動作しません。私のコードで何が間違っていますか?

私のHTML構造は次のとおりです。

<table> 
    <tr> 
     <td><!-- all id for the div and image inside the td are dynamic --> 
      <div><!-- Need to access this div --> 
       <!-- content ---> 
      </div> 
     </td> 
    </tr> 
</table> 
+1

をあなたがしたいですか各tdの各最初のdivまたはすべてのdivの最初のdivを見つけますか? –

+0

@FelixKling:はい私は各tdの各最初のdivを見つける必要があります – krish

答えて

4

.parents()はあなたの選択のすべての親を見つけます。あなたが望むものは子供です。

$('table tr td div:first').css("position", "relative"); 

これはあなたのためのトリックを行います:)


をまた、あなたが使用することができ、その場合には、唯一の正確な子孫を選択することをお勧めします:

$('table tr td > div:first').css("position", "relative"); 
+2

また、正確な子孫だけを選択したい場合は、そのcasの中で "table tr td> div" – Flater

+0

を使用することができます。 > div:first " – krish

+0

jQueryのドキュメントに示されているように、jQuery(" table tr td div ")。filter(":first ")が高速です。重いDOMツリーを扱うとき –

関連する問題