2011-11-06 3 views
0

여기에 계시 버튼이 왜 작동하지 않고 모든 것을 드러내지 않는지 이해하는 사람이 있습니까? 숨길 수있는 방법에 대한 더 나은 제안이있는 경우에도jQuery 숨겨진 요소가 노출 된 후 나타납니다

,/... 내 JSFiddle 예를 이해하기 훨씬 쉽습니다

감사 할 몇 가지 요소를 제외하고 모두 공개 http://jsfiddle.net/qp7HB/

$('#hide').click(function(){ 
    $('body > :not(#reveal)').not(this).hide(); 
    $("#test1").add(this).appendTo("body");  
}); 

$('#reveal').click(function(){ 
    $('body').show(); 
}); 

답변

3

body은 절대로 숨겨지지 않았으므로 그 자식 만 숨겨졌습니다. 명시 적으로 숨겨져있는 경우 요소의 부모 표시는 요소 자체를 자동으로 표시하지 않습니다. 당신은 할 수 있습니다 :

$('#reveal').click(function(){ 
    $('body').children().show(); 
    // or $('body > *').show(); 
}); 

DEMO

+0

미안 해요, 잘못된 블록보고 데모는 작전과 동일하다고 생각했다. –

+0

감사합니다. – SparrwHawk

+0

@JaredFarrish : np :) –

관련 문제