JQuery kullanarak CSS görüntüleme yok veya özelliğini nasıl engelleyebilirim?


Yanıtlar:


923

Bunu yapmanın doğru yolu kullanmaktır showve hide:

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

Alternatif bir yol, jQuery css yöntemini kullanmaktır :

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

@GenericTypeTea: #idkimlikleri için kullanılır, kullanmak istersem ne olur class?
AabinGunz

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

8
Kullanmayı denedim $('#id').css('display', 'none');, ama işe yaramadı. Ancak, kullanmak $('#id').css('color', 'red');işe yarıyor. Yine de neden olduğundan emin değilim. Herhangi bir fikri olan var mı? Şimdiden teşekkürler.
David

5
Bu yanıta $ ('# id'). Hide () ve $ ("# id"). Css ("display", "none") arasındaki farkı da eklemeye değer.
ManirajSS

1
Eski işlevin yalnızca metni gizlediği ve bir öğenin kapladığı alanı serbest bırakmazken ikincisi arasında bir fark vardır, oysa ikincisi içeriği gizler ve cocern öğesinin kapladığı alanı boşaltır
Dila Gurung

110

Bunu başarmanın birkaç yolu vardır, her birinin kendi amacı vardır.


1. ) Bir öğeye basitçe yapılacaklar listesini atarken satır içi kullanmak için

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

2. ) Birden çok CSS özelliği ayarlarken kullanmak için

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

3. ) Komutu dinamik olarak çağırmak için

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

4. ) Div ise, blok ile hiçbiri arasında dinamik olarak geçiş yapmak için

  • bazı öğeler Ta g N ame'ye bağlı olarak satır içi, satır içi blok veya tablo olarak görüntülenir

$ ( '# Ele_id') geçiş ().;


27

Div'ın görünümü varsayılan olarak engelleniyorsa, görünürlük arasında geçiş yapmak için yalnızca .show()ve .hide()daha da basit kullanabilirsiniz .toggle().


Doğru, ekranı başlangıçta ne olursa olsun, blok veya farklı bir şey olarak ayarlayacaktır.
danielgwood


6

JQuery CSS yöntemini kullanarak yapmanın diğer yolu:

$("#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);

Bir açıklama yapılabilir.
Peter Mortensen

2

Bir öğeyi gizlemek ve göstermek istiyorsanız, zaten görünür olup olmamasına bağlı olarak, .hide()ve yerine değiştirme özelliğini kullanabilirsiniz..show()

$('elem').toggle();

1

.hide () benim için Chrome'da çalışmıyor.

Bu gizlemek için çalışır:

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

0

Benim durumumda, bir giriş öğesinin boş olup olmadığına göre bir formun öğelerini göster / gizle yapıyordum, böylece öğeleri gizlerken, gizli olanları takip eden öğe, alanını işgal ederek yeniden konumlandırıldı: bir şamandıra yapmak gerekiyordu: sol böyle bir elementin elementi. Bağlı olarak bir eklenti kullanmak bile şamandıra kullanmak gerekiyordu.


0

Bunu kullan:

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

Veya:

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

benim için çalışmıyor sorun var :(.<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

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.