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-collapse
Twitter 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 .hidden
sınıfı, ancak tavsiye olmaz .removeClass
bunun 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, .hidden
sı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 .show
sınıf aslında jQuery'nin satır içi stili ile aynıdır 'display: block'
. Ancak bir .show
noktada 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" );
});
});