web-dev-qa-db-ja.com

jQueryでは、非表示の要素をどのように選択できますか?

以下のコードで_displaynoneに設定されている_<span>_を選択するにはどうすればよいですか?

_<p id="p1">
<span id="test1" style="display:none">test1</span> 
<span id="test2" >test2</span> 
</p>
_

IDが「test1」の_<span>_を$("span[id='test1']")を使用して選択できますが、$("span[style='display:none']")を使用すると機能しません。

この要素を一度に取得する方法はありますか?

どうもありがとう。

28
Kirk

:hidden セレクターを探しています

IDで要素を選択する適切な方法は単純です:

$("#test1");

あなたがしている方法でそれを行うと、jQueryが不必要な解析を行うようになり、はるかに遅くなります。

非表示の場合のみ#test1を選択する場合は、次のようにします。

$("#test1:hidden");

<span>の下に隠されているすべての#p1要素を選択する場合は、次のようにします。

$("span:hidden", "#p1");

コメントに記載されているように、このセレクターの反対は :visible セレクターです。

$("span:visible", "#p1");

次に、要素<span>内の表示されている#p1要素を選択します。

46