Twitter Bootstrap içeriği değiştirmek için sınıflar sağlar, bkz. Https://github.com/twbs/bootstrap/blob/3ee5542c990817324f0a07b97d01d1fe206fd8d6/less/utilities.less .
JQuery'de tamamen yeniyim ve belgelerini okuduktan sonra Twitter Bootstrap + jQuery'yi birleştirmek için başka bir çözüme geldim.
İlk olarak, 'deri' ve 'göstermek' bir eleman (sınıf WSIS-çökme) bir başka eleman üzerine doğrudan (sınıf WSIS-geçiş), çözüm kullanmaktır .toggle .
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle();
});
});
.wsis-collapseTwitter Bootstrap (V3) sınıfını kullanarak öğeyi zaten gizlediniz .hidden:
.hidden {
display: none !important;
visibility: hidden !important;
}
Eğer tıkladığınızda .wsis-toggle, jQuery bir satır içi stil ekliyor:
display: block
Yüzünden !important Heyecan Bootstrap içinde, biz kaldırmak gerekir bu nedenle bu satır içi stil, hiçbir etkisi yoktur .hiddensınıfı, ancak tavsiye olmaz .removeClassbunun için! Çünkü jQuery bir şeyi tekrar gizleyecekse, aynı zamanda satır içi bir stil de ekler:
display: none
Bu, AT için de optimize edilmiş olan Twitter Bootstrap'ın .hidden sınıfı ile aynı değildir (ekran okuyucular). Yani, gizli div'i göstermek istiyorsak .hidden, Twitter Bootstrap sınıfından kurtulmamız gerekiyor , bu yüzden önemli ifadelerden kurtuluyoruz, ancak tekrar gizlersek, .hiddensınıfı tekrar geri istiyoruz ! Bunun için [.toggleClass] [3] kullanabiliriz.
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden" );
});
});
Bu şekilde, içerik her gizlendiğinde gizli sınıfı kullanmaya devam edersiniz.
TB'deki .showsınıf aslında jQuery'nin satır içi stili ile aynıdır 'display: block'. Ancak bir .shownoktada sınıf farklı olacaksa, bu sınıfı da eklemeniz yeterlidir:
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden show" );
});
});