Twitter Bootstrap bietet Klassen zum Umschalten von Inhalten, siehe https://github.com/twbs/bootstrap/blob/3ee5542c990817324f0a07b97d01d1fe206fd8d6/less/utilities.less .
Ich bin völlig neu in jQuery und nachdem ich ihre Dokumente gelesen hatte, kam ich zu einer anderen Lösung, um Twitter Bootstrap + jQuery zu kombinieren.
Erstens besteht die Lösung zum "Ausblenden" und "Anzeigen" eines Elements (Klasse wsis-Collapse) beim Klicken auf ein anderes Element (Klasse wsis-toggle) in der Verwendung von .toggle .
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle();
});
});
Sie haben das Element bereits .wsis-collapsemithilfe der Twitter Bootstrap (V3) -Klasse ausgeblendet .hidden:
.hidden {
display: none !important;
visibility: hidden !important;
}
Wenn Sie auf klicken .wsis-toggle, fügt die jQuery einen Inline-Stil hinzu:
display: block
Aufgrund des !importantTwitter-Bootstraps hat dieser Inline-Stil keine Auswirkung, daher müssen wir die .hiddenKlasse entfernen , aber ich werde dies nicht empfehlen .removeClass! Denn wenn jQuery etwas wieder ausblendet, wird auch ein Inline-Stil hinzugefügt:
display: none
Dies ist nicht dasselbe wie die .hidden-Klasse von Twitter Bootstrap, die auch für AT (Screenreader) optimiert ist. Wenn wir also das versteckte Div zeigen wollen, müssen wir die .hiddenKlasse von Twitter Bootstrap loswerden, damit wir die wichtigen Anweisungen loswerden, aber wenn wir es wieder verstecken, wollen wir die .hiddenKlasse wieder haben! Wir können dafür [.toggleClass] [3] verwenden.
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden" );
});
});
Auf diese Weise verwenden Sie die versteckte Klasse jedes Mal, wenn der Inhalt ausgeblendet wird.
Die .showKlasse in TB entspricht tatsächlich dem Inline-Stil der jQuery 'display: block'. Aber wenn die .showKlasse irgendwann anders sein wird, fügen Sie einfach auch diese Klasse hinzu:
jQuery(document).ready(function() {
jQuery(".wsis-toggle").click(function(){
jQuery(".wsis-collapse").toggle().toggleClass( "hidden show" );
});
});