2009-03-25 9 views
24

을 선택하려면 어떻게해야합니까? displaynone으로 설정되어 있습니까?jQuery에서 어떻게 숨겨진 요소를 선택할 수 있습니까?

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

나는 ID가 "TEST1은"$("span[id='test1']")를 사용하여 인 <span>을 선택할 수 있습니다,하지만 난 $("span[style='display:none']")를 사용할 때 작동하지 않습니다.

한 번에이 요소를 가져 오는 방법이 있습니까?

고마워요.

+0

잘 보시고 https://api.jquery.com/hidden-selector/ –

답변

42

당신은

이 ID를 기준으로 요소를 선택하는 적절한 방법은 단순히 참고하십시오 :hidden 선택을 찾고 있습니다 :

$("#test1"); 

는 당신이 jQuery를 불필요한 파싱을 만드는 일을하는 방법을하는 훨씬 느립니다. 당신이 숨겨진 경우에만 #test1을 선택합니다

, 당신은이 작업을 수행 :

$("#test1:hidden"); 

당신이 #p1 아래에 숨겨져있는 모든 <span> 요소를 선택하고 싶다면, 당신이 수행

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

의견에서 언급 한 것처럼이 선택자의 반대쪽은 :visible 선택자입니다.

#p1 요소에 표시된 <span> 요소를 선택하십시오.

+0

을 보시고, 보이는 요소를 찾으려면 그 반대도 존재하십시오 : - : visible –

+0

충분히 정교합니다. 답변을 추가했습니다. :) –

+2

이것은 분명히 바뀌 었습니다. 문서에 다음과 같이 명시되어 있습니다. "부모가 문서에서 공백을 사용하지 않으면 숨겨진 것으로 간주되는 요소. CSS 가시성은 고려되지 않습니다." – cweston

관련 문제