jQuery를 사용하여 CSS 표시 없음을 변경하거나 속성을 차단하려면 어떻게해야합니까?


429

jQuery를 사용하여 CSS 표시 없음을 변경하거나 속성을 차단하려면 어떻게해야합니까?

답변:


923

이 작업을 수행하는 올바른 방법은 사용하는 것입니다 showhide:

$('#id').hide();
$('#id').show();

다른 방법은 jQuery CSS 메소드 를 사용하는 것입니다.

$("#id").css("display", "none");
$("#id").css("display", "block");

@GenericTypeTea : #idID에 사용하고 싶다면 사용하고 싶습니다 class.
AabinGunz

26
$(".class").css("display", "none");
djdd87

8
을 사용해 보았지만 $('#id').css('display', 'none');작동하지 않았습니다. 그러나 사용 $('#id').css('color', 'red');이 작동합니다. 그래도 왜 그런지 잘 모르겠습니다. 누구든지 아이디어가 있습니까? 미리 감사드립니다.
David

5
이 답변에 $ ( '# id'). hide ()와 $ ( "# id"). css ( "display", "none")의 차이도 포함시킬 가치가 있습니다.
ManirajSS

1
전 기능은 텍스트 만 숨기고 공간이 cocern 요소가 차지하는 공간이 후자 숨기기 반면 요소 내용에 의해 점유 확보 및 확보하지 않는 두 사이의 차이가
Dila 구룽에게

110

이를 위해 여러 가지 방법이 있으며 각각 고유 한 목적으로 사용됩니다.


1. ) 요소에 할 일 목록을 지정하는 동안 인라인 을 사용하려면

$('#ele_id').css('display', 'block').animate(....
$('#ele_id').css('display', 'none').animate(....

2. ) 여러 CSS 속성을 설정하는 동안 사용하려면

$('#ele_id').css({
    display: 'none'
    height: 100px,
    width: 100px
});
$('#ele_id').css({
    display: 'block'
    height: 100px,
    width: 100px
});

3. ) 명령을 동적으로 호출하려면

$('#ele_id').show();
$('#ele_id').hide();

4. ) div 인 경우 블록과 없음을 동적으로 전환하려면

  • 몇몇 요소들은에 따라 인라인, 인라인 블록 또는 테이블로 표시되는 타행 g의 N AME

$ ( '# ele_id'). toggle ();


27

div 표시가 기본적으로 차단되어 있으면 .show()and를 사용 .hide()하거나 더 간단하게 .toggle()가시성을 전환 할 수 있습니다.


사실, 디스플레이를 처음에 있던 것으로 설정하여 블록 또는 다른 것일 수 있습니다.
danielgwood


6

jQuery CSS 메소드를 사용하는 다른 방법 :

$("#id").css({display: "none"});
$("#id").css({display: "block"});


2
(function($){
    $.fn.displayChange = function(fn){
        $this = $(this);
        var state = {};
        state.old = $this.css('display');
        var intervalID = setInterval(function(){
            if( $this.css('display') != state.old ){
                state.change = $this.css('display');
                fn(state);
                state.old = $this.css('display');
            }
        }, 100);        
    }

    $(function(){
        var tag = $('#content');
        tag.displayChange(function(obj){
            console.log(obj);
        });  
    })   
})(jQuery);

순서대로 설명하겠습니다.
Peter Mortensen

2

경우 숨기려하고 아직 표시 여부에 따라 요소를 보여, 당신이 대신 전환 사용할 수 있습니다 .hide().show()

$('elem').toggle();

1

Chrome에서 .hide ()가 작동하지 않습니다.

이것은 숨기기에 효과적입니다.

var pctDOM = jQuery("#vr-preview-progress-content")[0];
pctDOM.hidden = true;

0

필자의 경우 입력 요소가 비어 있는지 여부에 따라 양식의 요소 표시 / 숨기기를 수행 했으므로 요소를 숨길 때 숨겨진 요소 뒤에 오는 요소가 공간을 차지하도록 재배치되었습니다 .float을 수행해야했습니다. 그런 요소의 요소. dependOn으로 플러그인을 사용하더라도 float을 사용해야했습니다.


0

이것을 사용하십시오 :

$("#id").(":display").val("block");

또는:

$("#id").(":display").val("none");

나는 그것이 나를 위해 작동하지 않는 문제가 있습니다 :(.<style> #choosepath { display: none; } </style> <script> $(document).ready(function () { $('#btn_journey').click(function () { alert("button click"); $('#choosepath').css({"display":"normal"}); }); }); </script> </head> <body> <a href="#" class="btn btn-primary btn-lg" id="btn_journey">Start your journey</a> <div class="col-lg-3 col-md-6 mb-4" id="choosepath"> </div> </body></html>
jaibalaji

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.