Karusel
Slayd-shou komponenti, masalan, karusel kabi elementlar, tasvirlar yoki matn slaydlari bo'ylab harakatlanish uchun.
U qanday ishlaydi
Karusel - bu CSS 3D o'zgarishlari va biroz JavaScript-dan foydalangan holda yaratilgan bir qator kontentlar bo'ylab harakatlanish uchun slayd-shou. U bir qator rasmlar, matn yoki maxsus belgilar bilan ishlaydi. Shuningdek, u oldingi/keyingi boshqaruv va ko'rsatkichlarni qo'llab-quvvatlashni o'z ichiga oladi.
Page Visibility API qo'llab-quvvatlanadigan brauzerlarda veb-sahifa foydalanuvchiga ko'rinmasa (masalan, brauzer yorlig'i faol bo'lmaganda, brauzer oynasi kichraytirilganda va hokazo) karusel sirpanishdan saqlaydi.
prefers-reduced-motion
media so'roviga bog'liq. Maxsus imkoniyatlar hujjatlarimizning qisqartirilgan harakat bo'limiga qarang
.
Iltimos, shuni yodda tutingki, ichki o'rnatilgan karusellar qo'llab-quvvatlanmaydi va karusellar odatda mavjudlik standartlariga mos kelmaydi.
Nihoyat, agarutil.js
siz JavaScript-ni manbadan yaratayotgan bo'lsangiz, u .
Misol
Karusellar slayd o'lchamlarini avtomatik ravishda normallashtirmaydi. Shunday qilib, kontentni mos ravishda o'lchash uchun qo'shimcha yordam dasturlari yoki maxsus uslublardan foydalanishingiz kerak bo'lishi mumkin. Karusellar oldingi/keyingi boshqaruv va ko‘rsatkichlarni qo‘llab-quvvatlasa-da, ular aniq talab qilinmaydi. O'zingizga mos keladigan tarzda qo'shing va sozlang.
Sinfni .active
slaydlardan biriga qo'shish kerak, aks holda karusel ko'rinmaydi. Bundan tashqari, ixtiyoriy boshqaruv elementlari uchun noyobni o'rnatishni unutmang id
, .carousel
ayniqsa bitta sahifada bir nechta karuseldan foydalansangiz. Boshqaruv va ko'rsatkich elementlari elementga mos keladigan atributga data-target
(yoki href
havolalar uchun) ega bo'lishi kerak .id
.carousel
Faqat slaydlar
Bu yerda faqat slaydlar bilan karusel. Brauzerda standart tasvirni hizalanishini oldini olish uchun karusel tasvirlarining .d-block
mavjudligiga e'tibor bering ..w-100
<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>
Boshqaruv bilan
Oldingi va keyingi boshqaruv elementlarini qo'shish. Elementlardan foydalanishni tavsiya qilamiz <button>
, lekin siz <a>
bilan elementlardan ham foydalanishingiz mumkin role="button"
.
<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>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleControls" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleControls" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Ko'rsatkichlar bilan
Bundan tashqari, karuselga boshqaruv elementlari bilan bir qatorda ko'rsatkichlarni ham qo'shishingiz mumkin.
<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>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleIndicators" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleIndicators" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Sarlavhalar bilan
.carousel-caption
Har qanday element ichidagi element bilan slaydlaringizga osongina sarlavha qo'shing .carousel-item
. Ular quyida ko'rsatilganidek, ixtiyoriy displey yordam dasturlari bilan kichikroq ko'rish oynalarida osongina yashirilishi mumkin . Biz ularni dastlab bilan yashiramiz .d-none
va o'rta o'lchamdagi qurilmalarga qaytaramiz .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>Some representative placeholder content for the first slide.</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>Some representative placeholder content for the second slide.</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>Some representative placeholder content for the third slide.</p>
</div>
</div>
</div>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleCaptions" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleCaptions" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Crossfade
.carousel-fade
Slayd oʻrniga oʻzgaruvchan oʻtish bilan slaydlarni jonlantirish uchun karuselingizga qoʻshing . Karusel tarkibiga (masalan, faqat matnli slaydlar) qarab, to'g'ri kesishish uchun s .bg-body
-ga yoki ba'zi maxsus CSS qo'shishingiz mumkin..carousel-item
<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>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleFade" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleFade" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Individual .carousel-item
interval
Keyingi elementga avtomatik oʻtish oʻrtasidagi kechikish vaqtini oʻzgartirish data-interval=""
uchun a ga qoʻshing ..carousel-item
<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>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleInterval" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleInterval" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Sensorli surishni o‘chirib qo‘ying
Karusellar slaydlar orasida harakat qilish uchun sensorli ekranli qurilmalarda chapga/o‘ngga surishni qo‘llab-quvvatlaydi. data-touch
Bu atribut yordamida o'chirib qo'yilishi mumkin . Quyidagi misolda ham data-ride
atribut mavjud emas va data-interval="false"
u avtomatik ijro etilmaydi.
<div id="carouselExampleControlsNoTouching" class="carousel slide" data-touch="false" data-interval="false">
<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>
<button class="carousel-control-prev" type="button" data-target="#carouselExampleControlsNoTouching" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#carouselExampleControlsNoTouching" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
Foydalanish
Ma'lumotlar atributlari orqali
Karusel o'rnini osongina boshqarish uchun ma'lumotlar atributlaridan foydalaning. yoki data-slide
kalit so'zlarini qabul qiladi , bu esa slaydni joriy holatiga nisbatan o'zgartiradi. Shu bilan bir qatorda, slayd o'rnini bilan boshlangan ma'lum bir indeksga o'tkazadigan karuselga xom slayd indeksini o'tkazish uchun foydalaning .prev
next
data-slide-to
data-slide-to="2"
0
data-ride="carousel"
Atribut karuselni sahifa yuklanishidan boshlab animatsiya sifatida belgilash uchun ishlatiladi . Agar siz data-ride="carousel"
karuselni ishga tushirish uchun foydalanmasangiz, uni o'zingiz ishga tushirishingiz kerak. Uni bir xil karuselning aniq JavaScript ishga tushirishi (ortiqcha va keraksiz) bilan birgalikda ishlatib bo'lmaydi.
JavaScript orqali
Karuselga qo'lda qo'ng'iroq qiling:
$('.carousel').carousel()
Variantlar
Variantlar ma'lumotlar atributlari yoki JavaScript orqali uzatilishi mumkin. Maʼlumotlar atributlari uchun opsiya nomini quyidagi data-
kabi qoʻshing data-interval=""
.
Ism | Turi | Standart | Tavsif |
---|---|---|---|
interval | raqam | 5000 | Elementni avtomatik aylantirish o'rtasidagi kechikish vaqti. Agar bo'lsa false , karusel avtomatik ravishda aylanmaydi. |
klaviatura | mantiqiy | rost | Karusel klaviatura hodisalariga munosabat bildirishi kerakmi. |
pauza | string | mantiqiy | 'qarang' | ga o'rnatilgan bo'lsa Sensorli qurilmalarda, ga o‘rnatilgan bo‘lsa |
minish | ip | yolg'on | Foydalanuvchi birinchi elementni qo'lda aylantirgandan so'ng, karuselni avtomatik ijro etadi. ga oʻrnatilgan boʻlsa 'carousel' , yuklanganda karuselni avtomatik oʻynaydi. |
o'rash | mantiqiy | rost | Karusel doimiy ravishda aylanishi kerakmi yoki qattiq to'xtashlari kerakmi. |
teginish | mantiqiy | rost | Karusel sensorli ekranli qurilmalarda chap/o‘ngga surish harakatlarini qo‘llab-quvvatlashi kerakmi. |
Usullari
Asinxron usullar va o'tishlar
Barcha API usullari asenkron va o'tishni boshlaydi . O'tish boshlanishi bilanoq, lekin tugashidan oldin ular qo'ng'iroq qiluvchiga qaytadilar . Bundan tashqari, o'tish komponentidagi usul chaqiruvi e'tiborga olinmaydi .
Qo'shimcha ma'lumot olish uchun bizning JavaScript hujjatlariga qarang .
.carousel(options)
Karuselni ixtiyoriy variantlar object
bilan ishga tushiradi va ob'ektlar bo'ylab aylana boshlaydi.
$('.carousel').carousel({
interval: 2000
})
.carousel('cycle')
Karusel elementlarini chapdan o'ngga aylantiring.
.carousel('pause')
Karuselning ob'ektlar bo'ylab aylanishini to'xtatadi.
.carousel(number)
Karuselni ma'lum bir freymga aylantiradi (0-ga asoslangan, massivga o'xshash). Maqsadli element ko'rsatilishidan oldin (ya'ni voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi .slid.bs.carousel
.carousel('prev')
Oldingi elementga aylanish. Oldingi element ko'rsatilishidan oldin (ya'ni voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi .slid.bs.carousel
.carousel('next')
Keyingi elementga o'tish. Keyingi element ko'rsatilgunga qadar (ya'ni slid.bs.carousel
voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi.
.carousel('dispose')
Elementning karuselini yo'q qiladi.
.carousel('nextWhenVisible')
Sahifa ko'rinmasa yoki karusel yoki uning ota-onasi ko'rinmasa, karuselni keyingisiga o'tkazmang. Keyingi element ko'rsatilgunga qadar (ya'ni slid.bs.carousel
voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi.
.carousel('to')
Karuselni ma'lum bir freymga aylantiradi (0-ga asoslangan, massivga o'xshash). Keyingi element ko'rsatilgunga qadar (ya'ni slid.bs.carousel
voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi.
Voqealar
Bootstrap-ning karusel klassi karusel funksiyasiga ulanish uchun ikkita hodisani ochib beradi. Ikkala hodisa ham quyidagi qo'shimcha xususiyatlarga ega:
direction
: Karusel siljish yo'nalishi (yoki"left"
yoki"right"
).relatedTarget
: Faol element sifatida joyiga surilayotgan DOM elementi.from
: Joriy element indeksito
: Keyingi element indeksi
Barcha karusel hodisalari karuselning o'ziga (ya'ni <div class="carousel">
) qaratiladi.
Tadbir turi | Tavsif |
---|---|
slayd.bs.karusel | Bu hodisa slide misol usuli chaqirilganda darhol ishga tushadi. |
slid.bs.carusel | Ushbu hodisa karusel slaydga o'tishni tugatgandan so'ng o'chiriladi. |
$('#myCarousel').on('slide.bs.carousel', function () {
// do something...
})
O'tish muddatini o'zgartiring
O'tish muddati kompilyatsiya qilishdan oldin Sass o'zgaruvchisi yoki agar siz kompilyatsiya qilingan CSS dan foydalanayotgan bo'lsangiz, maxsus uslublar .carousel-item
bilan o'zgartirilishi mumkin . $carousel-transition
Agar bir nechta o'tish qo'llanilsa, avval transformatsiya o'tishi aniqlanganligiga ishonch hosil qiling (masalan, transition: transform 2s ease, opacity .5s ease-out
).