Yiqilish
Bir nechta sinflar va JavaScript plaginlarimiz yordamida loyihangiz boʻylab kontentning koʻrinishini oʻzgartiring.
U qanday ishlaydi
Collapse JavaScript plagini kontentni ko'rsatish va yashirish uchun ishlatiladi. Tugmalar yoki langarlar siz almashtiradigan muayyan elementlarga moslashtirilgan trigger sifatida ishlatiladi. Elementni yig'ish height
joriy qiymatidan jonlantiriladi 0
. CSS animatsiyalarni qanday boshqarishini hisobga olsak, siz elementdan foydalana padding
olmaysiz .collapse
. Buning o'rniga, sinfni mustaqil o'rash elementi sifatida foydalaning.
prefers-reduced-motion
media so'roviga bog'liq. Maxsus imkoniyatlar hujjatlarimizning qisqartirilgan harakat bo'limiga qarang
.
Misol
Sinf o'zgarishlari orqali boshqa elementni ko'rsatish va yashirish uchun quyidagi tugmalarni bosing:
.collapse
mazmunini yashiradi.collapsing
o'tish paytida qo'llaniladi.collapse.show
mazmunini ko‘rsatadi
Odatda, data-target
atributli tugmani ishlatishni tavsiya qilamiz. Semantik nuqtai nazardan tavsiya etilmasa ham, href
atribut (va a role="button"
) bilan havoladan ham foydalanishingiz mumkin. Ikkala holatda data-toggle="collapse"
ham talab qilinadi.
<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">
Some placeholder content for the collapse component. This panel is hidden by default but revealed when the user activates the relevant trigger.
</div>
</div>
Gorizontal
Yiqilish plagini gorizontal siqishni ham qo'llab-quvvatlaydi. Uning o'rniga .width
o'tish uchun modifikator sinfini qo'shing va bevosita asosiy elementga a o'rnating . O'zingizning shaxsiy Sassingizni yozing, inline uslublaridan foydalaning yoki kenglik yordam dasturlarimizdan foydalaning .width
height
width
min-height
bizning hujjatlarimizda haddan tashqari qayta bo'yashni oldini olish uchun to'plam mavjud bo'lsa-da, bu aniq talab qilinmaydi.
Faqat width
on bola elementi talab qilinadi.
<p>
<button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapseWidthExample" aria-expanded="false" aria-controls="collapseWidthExample">
Toggle width collapse
</button>
</p>
<div style="min-height: 120px;">
<div class="collapse width" id="collapseWidthExample">
<div class="card card-body" style="width: 320px;">
This is some placeholder content for a horizontal collapse. It's hidden by default and shown when triggered.
</div>
</div>
</div>
Bir nechta maqsadlar
A <button>
yoki <a>
bir nechta elementlarni JQuery selektori href
yoki data-target
atributiga havola qilish orqali ko'rsatishi va yashirishi mumkin. Bir nechta <button>
yoki <a>
elementni ko'rsatishi va yashirishi mumkin, agar ularning har biri unga o'z atributi bilan href
murojaat data-target
qilsa
Birinchi elementni almashtirish
<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">
Some placeholder content for the first collapse component of this multi-collapse example. This panel is hidden by default but revealed when the user activates the relevant trigger.
</div>
</div>
</div>
<div class="col">
<div class="collapse multi-collapse" id="multiCollapseExample2">
<div class="card card-body">
Some placeholder content for the second collapse component of this multi-collapse example. This panel is hidden by default but revealed when the user activates the relevant trigger.
</div>
</div>
</div>
</div>
Akkordeon misoli
Karta komponentidan foydalanib , siz akkordeon yaratish uchun sukut bo'yicha siqilish harakatini kengaytirishingiz mumkin. Akkordeon uslubiga to'g'ri erishish uchun, o'rash .accordion
sifatida foydalanishni unutmang.
.show
Sinf
tufayli bu panel sukut bo'yicha ko'rsatiladi
.<div class="accordion" id="accordionExample">
<div class="card">
<div class="card-header" id="headingOne">
<h2 class="mb-0">
<button class="btn btn-link btn-block text-left" 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">
Some placeholder content for the first accordion panel. This panel is shown by default, thanks to the <code>.show</code> class.
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="headingTwo">
<h2 class="mb-0">
<button class="btn btn-link btn-block text-left 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">
Some placeholder content for the second accordion panel. This panel is hidden by default.
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="headingThree">
<h2 class="mb-0">
<button class="btn btn-link btn-block text-left 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">
And lastly, the placeholder content for the third and final accordion panel. This panel is hidden by default.
</div>
</div>
</div>
</div>
Foydalanish imkoniyati
aria-expanded
Boshqaruv elementiga qo'shishni unutmang . Bu atribut boshqaruvga bogʻlangan yigʻiladigan elementning joriy holatini ekranni oʻqish moslamalariga va shunga oʻxshash yordamchi texnologiyalarga aniq etkazadi. Agar yig'iladigan element sukut bo'yicha yopilgan bo'lsa, boshqaruv elementidagi atribut qiymati ga ega bo'lishi kerak aria-expanded="false"
. Agar siz yig'iladigan elementni show
sinfdan foydalanib, sukut bo'yicha ochiq qilib qo'ygan bo'lsangiz, aria-expanded="true"
uning o'rniga boshqaruvni o'rnating. Plagin yig'iladigan element ochilgan yoki yopilmaganligiga (JavaScript orqali yoki foydalanuvchi o'sha yig'iladigan elementga bog'langan boshqa boshqaruv elementini ishga tushirgani uchun) avtomatik ravishda boshqaruv elementida ushbu atributni almashtiradi. Agar boshqaruv elementining HTML elementi tugma bo'lmasa (masalan, <a>
yoki <div>
), atributrole="button"
elementga qo'shilishi kerak.
Agar sizning boshqaruv elementingiz bitta yig'iladigan elementga mo'ljallangan bo'lsa - ya'ni atribut selektorga data-target
ishora qilsa - siz yig'iladigan elementni o'z ichiga olgan boshqaruv elementiga atributni qo'shishingiz kerak . Zamonaviy ekran o'quvchilari va shunga o'xshash yordamchi texnologiyalar foydalanuvchilarga to'g'ridan-to'g'ri yig'iladigan elementga o'tish uchun qo'shimcha yorliqlar bilan ta'minlash uchun ushbu atributdan foydalanadi.id
aria-controls
id
Esda tutingki, Bootstrap-ning joriy tatbiqi ARIA Mualliflik Amaliyotlari Qo'llanmasi akkordeon naqshida tasvirlangan turli xil klaviatura o'zaro ta'sirlarini qamrab olmaydi - ularni o'zingiz maxsus JavaScript-ga qo'shishingiz kerak bo'ladi.
Foydalanish
Yiqilish plagini og'ir yuklarni ko'tarish uchun bir nechta sinflardan foydalanadi:
.collapse
mazmunini yashiradi.collapse.show
mazmunini ko‘rsatadi.collapsing
o'tish boshlanganda qo'shiladi va tugashi bilan o'chiriladi
Ushbu sinflarni quyidagi manzilda topish mumkin _transitions.scss
.
Ma'lumotlar atributlari orqali
Bir yoki bir nechta yig'iladigan elementlarning boshqaruvini avtomatik belgilash uchun elementga data-toggle="collapse"
va a qo'shing . data-target
Atribut data-target
siqishni qo'llash uchun CSS selektorini qabul qiladi. collapse
Sinfni yig'iladigan elementga qo'shganingizga ishonch hosil qiling . Agar siz uni sukut bo'yicha ochishni istasangiz, qo'shimcha sinfni qo'shing show
.
Akkordeonga o'xshash guruh boshqaruvini yig'iladigan maydonga qo'shish uchun ma'lumotlar atributini qo'shing data-parent="#selector"
. Buni amalda ko'rish uchun demoga qarang.
JavaScript orqali
Qo'lda yoqish:
$('.collapse').collapse()
Variantlar
Variantlar ma'lumotlar atributlari yoki JavaScript orqali uzatilishi mumkin. Maʼlumotlar atributlari uchun opsiya nomini quyidagi data-
kabi qoʻshing data-parent=""
.
Ism | Turi | Standart | Tavsif |
---|---|---|---|
ota-ona | selektor | jQuery obyekti | DOM elementi | yolg'on | Agar ota-ona ko'rsatilgan bo'lsa, ushbu yig'iladigan element ko'rsatilganda ko'rsatilgan ota-ona ostidagi barcha yig'iladigan elementlar yopiladi. (an'anaviy akkordeon xatti-harakatiga o'xshash - bu card sinfga bog'liq). Atribut maqsadli yig'iladigan maydonga o'rnatilishi kerak. |
almashtirish | mantiqiy | rost | Chaqiruvda yig'iladigan elementni almashtiradi |
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 .
.collapse(options)
Kontentingizni yig'iladigan element sifatida faollashtiradi. Ixtiyoriy variantlarni qabul qiladi object
.
$('#myCollapsible').collapse({
toggle: false
})
.collapse('toggle')
Yigʻiladigan elementni koʻrsatish yoki berkitishga almashtiradi. Yig'iladigan element haqiqatda ko'rsatilishi yoki yashirilishidan oldin (ya'ni yoki hodisa sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi .shown.bs.collapse
hidden.bs.collapse
.collapse('show')
Yigʻiladigan elementni koʻrsatadi. Yig'ib olinadigan element haqiqatda ko'rsatilishidan oldin (ya'ni, voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi .shown.bs.collapse
.collapse('hide')
Yig'iladigan elementni yashiradi. Yig'ib olinadigan element haqiqatda yashirilgunga qadar (ya'ni voqea sodir bo'lishidan oldin) qo'ng'iroq qiluvchiga qaytadi .hidden.bs.collapse
.collapse('dispose')
Elementning qulashini yo'q qiladi.
Voqealar
Bootstrap ning qulash klassi qulash funksiyasiga ulanish uchun bir nechta hodisalarni ochib beradi.
Tadbir turi | Tavsif |
---|---|
show.bs.collapse | Ushbu hodisa show misol usuli chaqirilganda darhol ishga tushadi. |
ko'rsatilgan.bs.qulash | Ushbu hodisa yig'ish elementi foydalanuvchiga ko'rinadigan bo'lsa, ishga tushiriladi (CSS o'tishlari tugashini kutadi). |
yashirish.bs.qulash | Ushbu hodisa hide usul chaqirilgandan so'ng darhol o'chiriladi. |
yashirin.bs.qulash | Ushbu hodisa siqilish elementi foydalanuvchidan yashirilganda ishga tushiriladi (CSS o'tishlari tugashini kutadi). |
$('#myCollapsible').on('hidden.bs.collapse', function () {
// do something...
})