Source

Strni

Preklopite vidnost vsebine v vašem projektu z nekaj razredi in našimi vtičniki JavaScript.

Kako deluje

Vtičnik JavaScript za strnitev se uporablja za prikaz in skrivanje vsebine. Gumbi ali sidra se uporabljajo kot sprožilci, ki so preslikani na določene elemente, ki jih preklapljate. Strnjenje elementa bo animiralo heightiz trenutne vrednosti v 0. Glede na to, kako CSS obravnava animacije, ne morete uporabiti paddingna .collapseelementu. Namesto tega uporabite razred kot neodvisen ovojni element.

Učinek animacije te komponente je odvisen od prefers-reduced-motionmedijske poizvedbe. Oglejte si razdelek o zmanjšanem gibanju v naši dokumentaciji o dostopnosti .

Primer

Kliknite spodnje gumbe, da prikažete ali skrijete drug element prek sprememb razreda:

  • .collapseskriva vsebino
  • .collapsingse uporablja med prehodi
  • .collapse.showprikazuje vsebino

Uporabite lahko povezavo z hrefatributom ali gumb z data-targetatributom. V obeh primerih data-toggle="collapse"je potrebno.

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>

Več ciljev

A <button>ali <a>lahko prikaže in skrije več elementov tako, da se nanje sklicuje z izbirnikom JQuery v svojem atributu hrefali . data-targetVeč <button>ali <a>lahko prikaže in skrije element, če se vsak sklicuje nanj s svojim hrefali data-targetatributom

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>

Primer harmonike

S komponento kartice lahko razširite privzeto vedenje strnjevanja, da ustvarite harmoniko. Da bi pravilno dosegli slog harmonike, se prepričajte, da uporabite .accordionkot ovoj.

Animacija pariatnega klišeja, ki ga je preprečevala, eiusmod high life obtožba terry richardson in lignji. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Tovornjak s hrano kvinoja nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it lignji kava z enim poreklom nulla acceptenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Oglas veganski razen mesarja vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt verjetno še niste slišali zanje acusamus 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">
      <h2 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>
      </h2>
    </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">
      <h2 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>
      </h2>
    </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">
      <h2 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>
      </h2>
    </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>

Dostopnost

Bodite prepričani, da dodate aria-expandedv kontrolni element. Ta atribut izrecno posreduje trenutno stanje zložljivega elementa, povezanega s kontrolnikom, bralnikom zaslona in podobnim pomožnim tehnologijam. Če je zložljivi element privzeto zaprt, mora imeti atribut na nadzornem elementu vrednost aria-expanded="false". showČe ste z razredom nastavili, da je zložljivi element privzeto odprt, ga aria-expanded="true"namesto tega nastavite na kontrolniku. Vtičnik bo samodejno preklopil ta atribut na kontrolniku glede na to, ali je bil zložljivi element odprt ali zaprt (prek JavaScripta ali ker je uporabnik sprožil drug kontrolni element, prav tako povezan z istim zložljivim elementom). Če element HTML kontrolnika ni gumb (npr. <a>ali <div>), atributrole="button"je treba dodati elementu.

Če vaš kontrolni element cilja na en sam zložljiv element – ​​tj. data-targetatribut kaže na idizbirnik – dodajte aria-controlsatribut v kontrolni element, ki vsebuje idelement zložljivega elementa. Sodobni bralniki zaslona in podobne podporne tehnologije uporabljajo ta atribut, da uporabnikom zagotovijo dodatne bližnjice za navigacijo neposredno do samega zložljivega elementa.

Upoštevajte, da trenutna izvedba Bootstrapa ne pokriva različnih interakcij s tipkovnico, opisanih v vzorcu harmonike WAI-ARIA Authoring Practices 1.1 – te boste morali vključiti sami s prilagojenim JavaScriptom.

Uporaba

Vtičnik Collapse uporablja nekaj razredov za obvladovanje težkega dvigovanja:

  • .collapseskriva vsebino
  • .collapse.showprikazuje vsebino
  • .collapsingse doda, ko se prehod začne, in odstrani, ko se konča

Te razrede lahko najdete v _transitions.scss.

Preko podatkovnih atributov

Samo dodajte data-toggle="collapse"in data-targetelementu, da samodejno dodelite nadzor nad enim ali več zložljivimi elementi. Atribut data-targetsprejme izbirnik CSS za uporabo strnjenja. Ne pozabite dodati razreda collapsezložljivemu elementu. Če želite, da se privzeto odpre, dodajte dodatni razred show.

Če želite območju, ki ga je mogoče zložiti, dodati upravljanje skupine, podobno harmoniki, dodajte atribut podatkov data-parent="#selector". Oglejte si predstavitev, da vidite to v akciji.

Prek JavaScripta

Omogoči ročno z:

$('.collapse').collapse()

Opcije

Možnosti je mogoče posredovati prek podatkovnih atributov ali JavaScripta. Za atribute podatkov pripnite ime možnosti v data-, kot v data-parent="".

Ime Vrsta Privzeto Opis
starš selektor | jQuery predmet | element DOM lažno Če je podan nadrejeni element, bodo vsi zložljivi elementi pod navedenim nadrejenim elementom zaprti, ko je prikazan ta zložljivi element. (podobno kot tradicionalno vedenje harmonike - to je odvisno od cardrazreda). Atribut mora biti nastavljen na ciljnem zložljivem območju.
preklop logično prav Ob klicu preklopi zložljivi element

Metode

Asinhrone metode in prehodi

Vse metode API so asinhrone in začnejo prehod . K klicatelju se vrnejo takoj, ko se prehod začne, vendar preden se konča . Poleg tega bo prezrt klic metode prehodne komponente .

Za več informacij si oglejte našo dokumentacijo JavaScript .

.collapse(options)

Aktivira vašo vsebino kot zložljiv element. Sprejema neobvezne možnosti object.

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

.collapse('toggle')

Preklopi zložljiv element med prikazanim ali skritim. Vrne se klicatelju, preden je zložljivi element dejansko prikazan ali skrit (tj. preden pride do dogodka shown.bs.collapseali ).hidden.bs.collapse

.collapse('show')

Prikazuje zložljiv element. Vrne se klicatelju, preden je zložljivi element dejansko prikazan (tj. preden shown.bs.collapsepride do dogodka).

.collapse('hide')

Skrije zložljiv element. Vrne se klicatelju, preden je bil zložljivi element dejansko skrit (tj. preden hidden.bs.collapsepride do dogodka).

.collapse('dispose')

Uniči kolaps elementa.

Dogodki

Bootstrapov razred kolapsa razkrije nekaj dogodkov za priključitev na funkcionalnost kolapsa.

Vrsta dogodka Opis
show.bs.collapse Ta dogodek se sproži takoj, ko showse pokliče metoda primerka.
prikazano.bs.zruši Ta dogodek se sproži, ko je element strnjenja viden uporabniku (počakal bo, da se prehodi CSS zaključijo).
hide.bs.collapse Ta dogodek se sproži takoj, ko hideje bila metoda poklicana.
hidden.bs.collapse Ta dogodek se sproži, ko je bil strnjeni element skrit pred uporabnikom (počakal bo, da se zaključijo prehodi CSS).
$('#myCollapsible').on('hidden.bs.collapse', function () {
  // do something...
})