Source

Zusammenbruch

Schalten Sie die Sichtbarkeit von Inhalten in Ihrem Projekt mit einigen Klassen und unseren JavaScript-Plugins um.

Wie es funktioniert

Das Kollaps-JavaScript-Plugin dient zum Ein- und Ausblenden von Inhalten. Schaltflächen oder Anker werden als Auslöser verwendet, die bestimmten Elementen zugeordnet sind, die Sie umschalten. Das Reduzieren eines Elements animiert das heightvon seinem aktuellen Wert zu 0. Angesichts der Art und Weise, wie CSS mit Animationen umgeht, können Sie sie nicht paddingfür ein .collapseElement verwenden. Verwenden Sie stattdessen die Klasse als unabhängiges Wrapping-Element.

Beispiel

Klicken Sie auf die Schaltflächen unten, um ein anderes Element über Klassenänderungen ein- und auszublenden:

  • .collapseInhalte verbirgt
  • .collapsingwird während der Übergänge angewendet
  • .collapse.showzeigt Inhalt

Sie können einen Link mit dem hrefAttribut oder eine Schaltfläche mit dem data-targetAttribut verwenden. In beiden Fällen ist das data-toggle="collapse"erforderlich.

Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
<p>
  <a class="btn btn-primary" data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
    Link with href
  </a>
  <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample">
    Button with data-target
  </button>
</p>
<div class="collapse" id="collapseExample">
  <div class="card card-body">
    Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
  </div>
</div>

Mehrere Ziele

Ein <button>or <a>kann mehrere Elemente ein- und ausblenden, indem es sie mit einem JQuery-Selektor in seinem hrefor - data-targetAttribut referenziert. Mehrere <button>oder <a>können ein Element ein- und ausblenden, wenn sie es jeweils mit ihrem hrefor - data-targetAttribut referenzieren

Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
<p>
  <a class="btn btn-primary" data-toggle="collapse" href="#multiCollapseExample1" role="button" aria-expanded="false" aria-controls="multiCollapseExample1">Toggle first element</a>
  <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#multiCollapseExample2" aria-expanded="false" aria-controls="multiCollapseExample2">Toggle second element</button>
  <button class="btn btn-primary" type="button" data-toggle="collapse" data-target=".multi-collapse" aria-expanded="false" aria-controls="multiCollapseExample1 multiCollapseExample2">Toggle both elements</button>
</p>
<div class="row">
  <div class="col">
    <div class="collapse multi-collapse" id="multiCollapseExample1">
      <div class="card card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
      </div>
    </div>
  </div>
  <div class="col">
    <div class="collapse multi-collapse" id="multiCollapseExample2">
      <div class="card card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
      </div>
    </div>
  </div>
</div>

Beispiel Akkordeon

Mithilfe der Kartenkomponente können Sie das standardmäßige Minimierungsverhalten erweitern, um ein Akkordeon zu erstellen.

Anim pariatur clische reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 Wolfsmond officia aute, non cupidatat skateboard dolor brunch. Foodtruck Quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it tintenfisch sortenreiner kaffee nulla angenommenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Anzeige veganer Ausnahme Metzger Vice Lomo. Leggings occaecat Craft Beer Farm-to-Table, Raw-Denim-Ästhetik-Synth nesciunt Sie haben wahrscheinlich noch nichts von ihnen gehört accusamus labore sustainable VHS.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
<div class="accordion" id="accordionExample">
  <div class="card">
    <div class="card-header" id="headingOne">
      <h5 class="mb-0">
        <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
          Collapsible Group Item #1
        </button>
      </h5>
    </div>

    <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample">
      <div class="card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
      </div>
    </div>
  </div>
  <div class="card">
    <div class="card-header" id="headingTwo">
      <h5 class="mb-0">
        <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
          Collapsible Group Item #2
        </button>
      </h5>
    </div>
    <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionExample">
      <div class="card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
      </div>
    </div>
  </div>
  <div class="card">
    <div class="card-header" id="headingThree">
      <h5 class="mb-0">
        <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
          Collapsible Group Item #3
        </button>
      </h5>
    </div>
    <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample">
      <div class="card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
      </div>
    </div>
  </div>
</div>

Barrierefreiheit

aria-expandedAchten Sie darauf , das Steuerelement hinzuzufügen . Dieses Attribut übermittelt explizit den aktuellen Status des reduzierbaren Elements, das an das Steuerelement gebunden ist, an Bildschirmlesegeräte und ähnliche Hilfstechnologien. Wenn das reduzierbare Element standardmäßig geschlossen ist, sollte das Attribut des Steuerelements den Wert haben aria-expanded="false". Wenn Sie festgelegt haben, dass das reduzierbare Element mithilfe der showKlasse standardmäßig geöffnet ist, legen Sie aria-expanded="true"stattdessen das Steuerelement fest. Das Plug-in schaltet dieses Attribut auf dem Steuerelement automatisch um, je nachdem, ob das reduzierbare Element geöffnet oder geschlossen wurde (über JavaScript oder weil der Benutzer ein anderes Steuerelement ausgelöst hat, das ebenfalls mit demselben reduzierbaren Element verknüpft ist). Wenn das HTML-Element des Steuerelements keine Schaltfläche ist (z. B. ein <a>oder <div>), wird das Attributrole="button"sollte dem Element hinzugefügt werden.

Wenn Ihr Steuerelement auf ein einzelnes reduzierbares Element abzielt – dh das data-targetAttribut auf einen idSelektor zeigt – sollten Sie das aria-controlsAttribut dem Steuerelement hinzufügen, das die iddes reduzierbaren Elements enthält. Moderne Screenreader und ähnliche Hilfstechnologien nutzen dieses Attribut, um Benutzern zusätzliche Verknüpfungen bereitzustellen, mit denen sie direkt zum reduzierbaren Element selbst navigieren können.

Beachten Sie, dass die aktuelle Implementierung von Bootstrap die verschiedenen Tastaturinteraktionen, die im Akkordeonmuster WAI-ARIA Authoring Practices 1.1 beschrieben sind, nicht abdeckt – Sie müssen diese selbst mit benutzerdefiniertem JavaScript einbinden.

Verwendungszweck

Das Kollaps-Plugin verwendet einige Klassen, um das schwere Heben zu bewältigen:

  • .collapseverbirgt den Inhalt
  • .collapse.showzeigt den Inhalt
  • .collapsingwird hinzugefügt, wenn der Übergang beginnt, und entfernt, wenn er endet

Diese Klassen finden Sie in _transitions.scss.

Über Datenattribute

Fügen Sie dem Element einfach data-toggle="collapse"und ein hinzu data-target, um automatisch die Steuerung eines oder mehrerer zusammenklappbarer Elemente zuzuweisen. Das data-targetAttribut akzeptiert einen CSS-Selektor, auf den die Minimierung angewendet wird. Stellen Sie sicher, dass Sie die Klasse collapsedem zusammenklappbaren Element hinzufügen. Wenn Sie möchten, dass es standardmäßig geöffnet ist, fügen Sie die zusätzliche Klasse hinzu show.

Um einem zusammenklappbaren Bereich eine akkordeonartige Gruppenverwaltung hinzuzufügen, fügen Sie das Datenattribut hinzu data-parent="#selector". Sehen Sie sich die Demo an, um dies in Aktion zu sehen.

Über JavaScript

Manuell aktivieren mit:

$('.collapse').collapse()

Optionen

Optionen können über Datenattribute oder JavaScript übergeben werden. Hängen Sie für Datenattribute den Optionsnamen an data-, wie in data-parent="".

Name Typ Standard Beschreibung
Elternteil Selektor | jQuery-Objekt | DOM-Element FALSCH Wenn ein übergeordnetes Element angegeben ist, werden alle reduzierbaren Elemente unter dem angegebenen übergeordneten Element geschlossen, wenn dieses reduzierbare Element angezeigt wird. (ähnlich dem traditionellen Akkordeonverhalten - dies ist von der cardKlasse abhängig). Das Attribut muss auf den zusammenklappbaren Zielbereich gesetzt werden.
Umschalten boolesch Stimmt Schaltet das reduzierbare Element beim Aufruf um

Methoden

Asynchrone Methoden und Übergänge

Alle API-Methoden sind asynchron und starten einen Übergang . Sie kehren zum Aufrufer zurück, sobald der Übergang gestartet wird, aber bevor er endet . Außerdem wird ein Methodenaufruf einer Übergangskomponente ignoriert .

Weitere Informationen finden Sie in unserer JavaScript-Dokumentation.

.collapse(options)

Aktiviert Ihren Inhalt als zusammenklappbares Element. Akzeptiert optionale Optionen object.

$('#myCollapsible').collapse({
  toggle: false
})

.collapse('toggle')

Blendet ein reduzierbares Element ein oder aus. Gibt an den Aufrufer zurück, bevor das reduzierbare Element tatsächlich angezeigt oder ausgeblendet wurde (dh bevor das shown.bs.collapseor hidden.bs.collapse-Ereignis eintritt).

.collapse('show')

Zeigt ein zusammenklappbares Element. Gibt an den Aufrufer zurück, bevor das reduzierbare Element tatsächlich angezeigt wurde (dh bevor das shown.bs.collapseEreignis eintritt).

.collapse('hide')

Blendet ein zusammenklappbares Element aus. Gibt an den Aufrufer zurück, bevor das zusammenklappbare Element tatsächlich ausgeblendet wurde (dh bevor das hidden.bs.collapseEreignis eintritt).

.collapse('dispose')

Zerstört den Kollaps eines Elements.

Veranstaltungen

Die Collapse-Klasse von Bootstrap macht einige Ereignisse verfügbar, um sich in die Collapse-Funktionalität einzuklinken.

Ereignistyp Beschreibung
show.bs.collapse Dieses Ereignis wird sofort ausgelöst, wenn die showInstanzmethode aufgerufen wird.
gezeigt.bs.collapse Dieses Ereignis wird ausgelöst, wenn ein Minimierungselement für den Benutzer sichtbar gemacht wurde (wartet auf den Abschluss der CSS-Übergänge).
hide.bs.collapse Dieses Ereignis wird sofort ausgelöst, wenn die hideMethode aufgerufen wurde.
hidden.bs.collapse Dieses Ereignis wird ausgelöst, wenn ein Minimierungselement vor dem Benutzer ausgeblendet wurde (wartet, bis die CSS-Übergänge abgeschlossen sind).
$('#myCollapsible').on('hidden.bs.collapse', function () {
  // do something…
})