Twitter Bootstrap menyediakan kelas untuk mengganti konten, lihat https://github.com/twbs/bootstrap/blob/3ee5542c990817324f0a07b97d01d1fe206fd8d6/less/utilities.less .
Saya benar-benar baru di jQuery, dan setelah membaca dokumen mereka, saya datang ke solusi lain untuk menggabungkan Twitter Bootstrap + jQuery.
Pertama, solusi untuk 'menyembunyikan' dan 'menampilkan' suatu elemen (class wsis-collapse) ketika mengklik elemen lain (class wsis-toggle), adalah dengan menggunakan .toggle .
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle();
});
});
Anda telah menyembunyikan elemen .wsis-collapsedengan menggunakan kelas Twitter Bootstrap (V3) .hiddenjuga:
.hidden {
display: none !important;
visibility: hidden !important;
}
Ketika Anda mengklik .wsis-toggle, jQuery menambahkan gaya inline:
display: block
Karena ada !importantdi Bootstrap Twitter, gaya inline ini tidak berpengaruh, jadi kami harus menghapus .hiddenkelas, tetapi saya tidak akan merekomendasikan .removeClassini! Karena ketika jQuery akan menyembunyikan sesuatu lagi, itu juga menambahkan gaya inline:
display: none
Ini tidak sama dengan kelas Twitter Bootstrap, yang dioptimalkan untuk AT juga (pembaca layar). Jadi, jika kita ingin menunjukkan div yang tersembunyi, kita harus menyingkirkan .hiddenkelas Bootstrap Twitter, jadi kita menyingkirkan pernyataan penting, tetapi jika kita menyembunyikannya lagi, kita ingin .hiddenkelas kembali lagi! Kita dapat menggunakan [.toggleClass] [3] untuk ini.
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden" );
});
});
Dengan cara ini Anda terus menggunakan kelas tersembunyi setiap kali konten disembunyikan.
The .showkelas dalam TB sebenarnya sama dengan gaya inline dari jQuery, baik 'display: block'. Tetapi jika .showkelas di beberapa titik akan berbeda, maka Anda cukup menambahkan kelas ini juga:
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden show" );
});
});