Source

Karussell

Slaidiseansi komponent elementide (piltide või tekstislaidide) vahel liikumiseks nagu karussell.

Kuidas see töötab

Karussell on CSS-i 3D-teisenduste ja natukese JavaScripti abil üles ehitatud slaidiseanss, mis võimaldab liikuda läbi sisusarja. See töötab piltide, teksti või kohandatud märgistusega. See hõlmab ka eelmiste/järgmiste juhtelementide ja indikaatorite tuge.

Brauserites, kus lehe nähtavuse API on toetatud, väldib karussell libisemist, kui veebileht pole kasutajale nähtav (nt kui brauseri vahekaart on passiivne, brauseriaken on minimeeritud jne).

Selle komponendi animatsiooniefekt sõltub prefers-reduced-motionmeediumipäringust. Vaadake meie juurdepääsetavuse dokumentatsiooni vähendatud liikumise jaotist .

Pange tähele, et pesastatud karusselle ei toetata ja karussellid ei järgi üldiselt juurdepääsetavuse standardeid.

Lõpuks, kui loote meie JavaScripti allikast, on see vajalikutil.js see .

Näide

Karussellid ei normaliseeri automaatselt slaidi mõõtmeid. Seetõttu peate võib-olla kasutama täiendavaid utiliite või kohandatud stiile, et sisu sobivat suurust muuta. Kuigi karussellid toetavad eelmisi/järgmisi juhtelemente ja indikaatoreid, pole need otseselt nõutavad. Lisage ja kohandage oma äranägemise järgi.

Klass .activetuleb lisada ühele slaidile, muidu karusselli ei paista. Samuti määrake valikuliste juhtelementide jaoks kindlasti kordumatu ID .carousel, eriti kui kasutate ühel lehel mitut karusselli. Juht- ja indikaatorelementidel peab olema data-targetatribuut (või hreflinkide puhul), mis ühtib .carouselelemendi ID-ga.

Ainult slaidid

Siin on ainult slaididega karussell. Pange tähele, et karussellikujutistel on tähised .d-blockja .w-100, et vältida brauseri kujutiste vaikejoondamist.

<div id="carouselExampleSlidesOnly" class="carousel slide" data-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active">
        <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
</div>

Juhtseadmetega

Eelmiste ja järgmiste juhtelementide lisamine:

<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

Näitajatega

Lisaks juhtnuppudele saate karussellile lisada ka indikaatoreid.

<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
  <ol class="carousel-indicators">
    <li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>
    <li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
    <li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
  </ol>
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleIndicators" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleIndicators" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

Koos pealdistega

Lisage oma slaididele hõlpsasti pealdisi .carousel-captionelemendiga mis tahes .carousel-item. Neid saab valikuliste kuvautiliitidega hõlpsasti väiksematesse vaateavadesse peita, nagu allpool näidatud . Peidame need algselt rakendusega .d-noneja toome need tagasi keskmise suurusega seadmetele .d-md-block.

<div id="carouselExampleCaptions" class="carousel slide" data-ride="carousel">
  <ol class="carousel-indicators">
    <li data-target="#carouselExampleCaptions" data-slide-to="0" class="active"></li>
    <li data-target="#carouselExampleCaptions" data-slide-to="1"></li>
    <li data-target="#carouselExampleCaptions" data-slide-to="2"></li>
  </ol>
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="..." class="d-block w-100" alt="...">
      <div class="carousel-caption d-none d-md-block">
        <h5>First slide label</h5>
        <p>Nulla vitae elit libero, a pharetra augue mollis interdum.</p>
      </div>
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
      <div class="carousel-caption d-none d-md-block">
        <h5>Second slide label</h5>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
      </div>
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
      <div class="carousel-caption d-none d-md-block">
        <h5>Third slide label</h5>
        <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur.</p>
      </div>
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleCaptions" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleCaptions" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

Crossfade

Lisage .carousel-fadeoma karusselli, et animeerida slaide slaidi asemel tuhmumise üleminekuga.

<div id="carouselExampleFade" class="carousel slide carousel-fade" data-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleFade" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleFade" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

Lisage data-interval=""a .carousel-item-sse, et muuta aega, mis kulub automaatselt järgmise üksuseni liikumise vahel.

<div id="carouselExampleInterval" class="carousel slide" data-ride="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active" data-interval="10000">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item" data-interval="2000">
      <img src="..." class="d-block w-100" alt="...">
    </div>
    <div class="carousel-item">
      <img src="..." class="d-block w-100" alt="...">
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleInterval" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleInterval" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

Kasutamine

Andmeatribuutide kaudu

Kasutage karusselli asukoha hõlpsaks juhtimiseks andmeatribuute. data-slideaktsepteerib märksõnu prevvõi next, mis muudab slaidi asukohta selle praeguse asukoha suhtes. Teise võimalusena kasutage data-slide-totöötlemata slaidiindeksi edastamiseks karussellile data-slide-to="2", mis nihutab slaidi positsiooni konkreetsele registrile, mis algab tähega 0.

Atribuuti data-ride="carousel"kasutatakse karusselli märgistamiseks animeerivaks alates lehe laadimisest. Kui te ei kasuta data-ride="carousel"oma karusselli lähtestamiseks, peate selle ise lähtestama. Seda ei saa kasutada koos (liigse ja mittevajaliku) selgesõnalise JavaScripti lähtestamisega sama karusselli puhul.

JavaScripti kaudu

Helistage karusselli käsitsi, kasutades:

$('.carousel').carousel()

Valikud

Valikud saab edastada andmeatribuutide või JavaScripti kaudu. Andmeatribuutide jaoks lisage valiku nimi data-, nagu data-interval="".

Nimi Tüüp Vaikimisi Kirjeldus
intervall number 5000 Aeg, mis kulub üksuse automaatse tsükli vahel. Kui see on vale, ei käivitu karussell automaatselt.
klaviatuur tõeväärtus tõsi Kas karussell peaks reageerima klaviatuurisündmustele.
paus string | tõeväärtus "hõljuma"

Kui see on seatud "hover", peatab karusselli mouseentertsükli ja jätkab karusselli tsüklit mouseleave. Kui see on seatud false, ei peata karusselli kohal kursori hõljutamine seda.

Puutetundlike seadmete "hover"puhul peatub jalgrattasõit touchendkaheks intervalliks (kui kasutaja on karusselliga suhtlemise lõpetanud), kui see on seatud väärtusele , enne kui see automaatselt jätkub. Pange tähele, et see on lisaks ülaltoodud hiire käitumisele.

sõitma string vale Esitab karusselli automaatselt pärast seda, kui kasutaja on esimese üksuse käsitsi tsüklistanud. Kui "karussell", esitab karusselli laadimisel automaatselt.
mähis tõeväärtus tõsi Kas karussell peaks pidevalt tiirlema ​​või peaks olema raskeid peatusi.
puudutada tõeväärtus tõsi Kas karussell peaks toetama puuteekraaniga seadmetes vasakule/paremale pühkimist.

meetodid

Asünkroonsed meetodid ja üleminekud

Kõik API meetodid on asünkroonsed ja alustavad üleminekut . Nad naasevad helistaja juurde kohe pärast ülemineku algust, kuid enne selle lõppu . Lisaks ignoreeritakse üleminekukomponendi meetodikutset meetodikutset .

Lisateabe saamiseks vaadake meie JavaScripti dokumentatsiooni .

.carousel(options)

Lähtestab karusselli valikuliste valikutega objectja hakkab üksuste vahel ringi liikuma.

$('.carousel').carousel({
  interval: 2000
})

.carousel('cycle')

Liigub läbi karusselli üksuste vasakult paremale.

.carousel('pause')

Peatab karusselli esemete vahel liikumise.

.carousel(number)

Liigutab karusselli konkreetse kaadri juurde (0-põhine, sarnane massiiviga). Naaseb helistaja juurde enne sihtüksuse näitamist (st enne slid.bs.carouselsündmuse toimumist).

.carousel('prev')

Liigub eelmise üksuse juurde. Naaseb helistaja juurde enne eelmise üksuse näitamist (st enne slid.bs.carouselsündmuse toimumist).

.carousel('next')

Liigub järgmise üksuse juurde. Naaseb helistaja juurde enne järgmise üksuse näitamist (st enne slid.bs.carouselsündmuse toimumist).

.carousel('dispose')

Hävitab elemendi karusselli.

Sündmused

Bootstrapi karusselliklass paljastab kaks sündmust karusselli funktsioonidega liitumiseks. Mõlemal sündmusel on järgmised lisaomadused:

  • direction: suund, milles karussell libiseb (kas "left"või "right").
  • relatedTarget: DOM-element, mis libistatakse aktiivse üksusena oma kohale.
  • from: praeguse üksuse indeks
  • to: järgmise üksuse register

Kõik karussellisündmused käivitatakse karusselli enda (st <div class="carousel">) suunas.

Sündmuse tüüp Kirjeldus
slide.bs.carousell See sündmus käivitub kohe, kui slideeksemplari meetod käivitatakse.
liug.bs.karussell See sündmus käivitatakse, kui karussell on slaidi ülemineku lõpetanud.
$('#myCarousel').on('slide.bs.carousel', function () {
  // do something...
})

Muutke ülemineku kestust

Ülemineku kestust .carousel-itemsaab muuta $carousel-transitionSassi muutujaga enne kompileerimist või kohandatud stiilidega, kui kasutate kompileeritud CSS-i. Kui rakendatakse mitut üleminekut, veenduge, et teisendusüleminek oleks kõigepealt määratletud (nt transition: transform 2s ease, opacity .5s ease-out).