id1
jQuery:で id を持つドキュメントのすべての要素を見つける方法を知っています$("#id1")
。
id を持つ特定の div 内のすべての要素を見つける同様の方法はありid1
ますか?
#id1 が #test 内にある場合にのみ見つけたい場合は、次のように使用できます。
$("#test #id1")
またはこれ:
$("#test").find("#id1")
これらは構造的に同一です。実際、最初のものは基本的に 2 番目のものと同じことを内部的に行うことになります。
特定のドキュメントで任意の id 値を 1 回しか出現させることができないことに注意#id1
し#test
てください。
#id1 だけが必要な場合は、スコープをバインドする必要はありません (スコープは 1 つしかないため)。これを行うだけで、はるかに高速になります。
$("#id1")
テスト div の ID が「test」であると仮定すると、
できるよ
$("#test #id1")
また
$('#test').find("#id1")
ただし、ドキュメントには特定の id を持つ要素が1 つしかない必要があるため、どちらも実際には意味がありません。したがって、ドキュメントが正しいと仮定すると、どちらも と同等$("#id1")
です。
ID で要素を選択する場合、ID セレクターは十分に機能$('#id')
しますが、通常はこれで十分です。#test
<div>
ただし、変数に格納されている への参照が既にある場合は、jQuery セレクターにコンテキストを提供することができます。これにより、検索の作業が軽減されます。
これは、 への参照が既に ある場合にのみ有用であることに注意してください#test
。そうでない場合は、2 つの検索を行うことになります。
使用法:
var $testDiv = $('#test');
// ...
var $id1Div = $('#id1', $testDiv)
リンクで述べたように、計算上は次のことと同等です。
$testDiv.find('#id1')
html ID は一意であり、検索はブラウザーのネイティブdocument.getElementById
で実装されているため、ここではコンテキストの提供は特に役に立ちません。ただし、他のセレクターの場合は、非常に便利です。