2011-09-26 8 views
2

는 다음 코드와 붙어입니다 : 내가 볼/숨겨진 사용하여 텍스트를 전환 할는 또 다른 "토글 가시성"질문

http://jsfiddle.net/2v4aJ/

. 내가 .live 사용하는 이유는 페이지로 동적 텍스트를 추가하는 자바 스크립트 기능을 사용하고

, 즉

내가 아닌 볼에 (, 숨길 전환 할 수 있습니다 ... 만약 ($ ('# 1') .is (': hidden'))) 절대로 사실이 아닙니다.

답변

1

, 가시성

요소 : 그들은 여전히 ​​레이아웃에 공간을 사용하기 때문에, 눈에 보이는 것으로 간주됩니다 숨겨진 그래서 당신은 더 나은 확인 것

가치.

if ($('#1').css('visibility')==='hidden') 

또는 당신의 대답에 대해 다른 방법을

+0

아 감사합니다! 레이아웃의 공간이 여전히 소비되지만 값을 확인하지는 않는다고 생각했습니다! 나는 그것을 나중에 시험해보고 받아 들일 것입니다! – RegexCommander

+0

대단히 감사합니다! – RegexCommander

1

문제 :-) 감사 어떤 도움은 볼 수 visibility:hidden, 함께 :hidden 의사 선택 취급 요소들이 여전히 페이지에서 공간을 차지하기 때문이다. 가시성

요소 : 숨기거나 불투명도 : JQuery와 문서에서 0 그들은 여전히 ​​레이아웃의 공간을 사용하기 때문에, 눈에 보이는 로 간주됩니다.

대신, 당신은 CSS 속성 자체의 값을 확인할 수 있습니다 모든 :hidden 선택의

if($('#1').css("visibility") === "hidden") { 
    $('#1').css('visibility','visible'); 
} 
else { 
    $('#1').css('visibility','hidden'); 
} 
+0

감사를 사용합니다. 나는 그가 처음 이었기 때문에 Einacio의 대답을 받아 들였고이 계정은 새로운 것이기 때문에 당신을 업 그레 이드 할 수는 없지만 다른 누군가는 그렇게 할 것입니다! – RegexCommander

0

먼저 당신을 위해되지 않습니다 : 가시성

요소 : 숨기거나 불투명도를 : 0은 여전히 ​​레이아웃에서 공간을 소비하므로 보이도록 간주됩니다.

당신은 :visible 선택기를 사용할 수 있지만이 경우에만 요소 보이지 display:none 작동합니다. 귀하의 경우에는 CSS 속성을 확인해야합니다 :

또한 pleae는 요소에 대한 공간을 예약하기 위해 visibility:hidden을 예약합니다.

 $('#text').click(function() { 
      $('#2').toggle(); 
     }); 

코드 : http://jsfiddle.net/2v4aJ/6/

+0

': hidden'도 height-width : 0 또는 display : none 요소를 true로 검사합니다. – Einacio

+0

감사합니다. 추가 답변을 주신 데, 응답 – Samich

+0

을 다음과 같이 업데이트했습니다 : hidden for my application, intentional for my application, thanks! – RegexCommander

0

toggle 명령을 사용하여 당신이 그것을위한 공간을 확보 할 필요가없는 경우

내가 사용하는 것이 좋습니다. jQuery docs on :hidden에 따라

$('#1').toggle(true); //show 
$('#1').toggle(false); //hide 
$('#1').toggle(); //flip 
+0

토글하면 'display' 속성이 변경됩니다. RegexCommander는 가시성을 가지고 노력하고 있습니다 – Einacio