in English

Runtuh

Togol keterlihatan kandungan merentas projek anda dengan beberapa kelas dan pemalam JavaScript kami.

Bagaimana ia berfungsi

Pemalam JavaScript runtuh digunakan untuk menunjukkan dan menyembunyikan kandungan. Butang atau sauh digunakan sebagai pencetus yang dipetakan pada elemen tertentu yang anda togol. Meruntuhkan elemen akan menghidupkan heightdaripada nilai semasanya kepada 0. Memandangkan cara CSS mengendalikan animasi, anda tidak boleh menggunakan paddingelemen .collapse. Sebaliknya, gunakan kelas sebagai elemen pembalut bebas.

Kesan animasi komponen ini bergantung pada prefers-reduced-motionpertanyaan media. Lihat bahagian gerakan yang dikurangkan dalam dokumentasi kebolehaksesan kami .

Contoh

Klik butang di bawah untuk menunjukkan dan menyembunyikan elemen lain melalui perubahan kelas:

  • .collapsemenyembunyikan kandungan
  • .collapsingdigunakan semasa peralihan
  • .collapse.showmenunjukkan kandungan

Secara amnya, kami mengesyorkan menggunakan butang dengan data-targetatribut. Walaupun tidak disyorkan dari sudut semantik, anda juga boleh menggunakan pautan dengan hrefatribut (dan a role="button"). Dalam kedua-dua kes, data-toggle="collapse"ia diperlukan.

Some placeholder content for the collapse component. This panel is hidden by default but revealed when the user activates the relevant trigger.
<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>

Mendatar

Pemalam runtuh juga menyokong runtuh mendatar. Tambahkan .widthkelas pengubah suai untuk mengalihkan widthbukannya heightdan tetapkan widthpada elemen anak segera. Jangan ragu untuk menulis Sass tersuai anda sendiri, gunakan gaya sebaris atau gunakan utiliti lebar kami .

Sila ambil perhatian bahawa walaupun contoh di bawah mempunyai min-heightset untuk mengelakkan pengecatan semula yang berlebihan dalam dokumen kami, ini tidak diperlukan secara eksplisit. Hanya widthelemen pada anak diperlukan.

This is some placeholder content for a horizontal collapse. It's hidden by default and shown when triggered.
<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>

Pelbagai sasaran

A <button>atau <a>boleh menunjukkan dan menyembunyikan berbilang elemen dengan merujuknya dengan pemilih JQuery dalam hrefatau data-targetatributnya. Berbilang <button>atau <a>boleh menunjukkan dan menyembunyikan elemen jika mereka masing-masing merujuknya dengan atribut hrefatau merekadata-target

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.
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.
<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>

Contoh akordion

Menggunakan komponen kad , anda boleh melanjutkan tingkah laku runtuh lalai untuk mencipta akordion. Untuk mencapai gaya akordion dengan betul, pastikan anda menggunakannya .accordionsebagai pembungkus.

Beberapa kandungan pemegang tempat untuk panel akordion pertama. Panel ini ditunjukkan secara lalai, terima kasih kepada .showkelas.

Some placeholder content for the second accordion panel. This panel is hidden by default.

And lastly, the placeholder content for the third and final accordion panel. This panel is hidden by default.
<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>

Kebolehcapaian

Pastikan anda menambah aria-expandedpada elemen kawalan. Atribut ini secara eksplisit menyampaikan keadaan semasa elemen boleh lipat yang terikat pada kawalan kepada pembaca skrin dan teknologi bantuan yang serupa. Jika elemen boleh lipat ditutup secara lalai, atribut pada elemen kawalan harus mempunyai nilai aria-expanded="false". Jika anda telah menetapkan elemen boleh lipat untuk dibuka secara lalai menggunakan showkelas, tetapkan aria-expanded="true"pada kawalan. Pemalam akan menogol atribut ini secara automatik pada kawalan berdasarkan sama ada elemen boleh lipat telah dibuka atau ditutup (melalui JavaScript, atau kerana pengguna mencetuskan elemen kawalan lain yang turut terikat pada elemen boleh lipat yang sama). Jika elemen HTML elemen kawalan bukan butang (cth, an <a>atau <div>), atributrole="button"perlu ditambah kepada elemen.

Jika elemen kawalan anda menyasarkan satu elemen boleh lipat – iaitu data-targetatribut menunjuk kepada idpemilih – anda harus menambah aria-controlsatribut pada elemen kawalan, yang mengandungi idelemen boleh lipat. Pembaca skrin moden dan teknologi bantuan serupa menggunakan atribut ini untuk menyediakan pengguna dengan pintasan tambahan untuk menavigasi terus ke elemen boleh lipat itu sendiri.

Ambil perhatian bahawa pelaksanaan semasa Bootstrap tidak meliputi pelbagai interaksi papan kekunci yang diterangkan dalam corak akordion Panduan Amalan Pengarangan ARIA - anda perlu memasukkannya sendiri dengan JavaScript tersuai.

Penggunaan

Pemalam runtuh menggunakan beberapa kelas untuk mengendalikan pengangkatan berat:

  • .collapsemenyembunyikan kandungan
  • .collapse.showmenunjukkan kandungan
  • .collapsingditambah apabila peralihan bermula, dan dikeluarkan apabila ia selesai

Kelas-kelas ini boleh didapati dalam _transitions.scss.

Melalui atribut data

Cuma tambah data-toggle="collapse"dan a data-targetpada elemen untuk menetapkan kawalan secara automatik bagi satu atau lebih elemen boleh lipat. Atribut data-targetmenerima pemilih CSS untuk menggunakan keruntuhan. Pastikan anda menambah kelas collapsepada elemen boleh lipat. Jika anda mahu ia dibuka secara lalai, tambahkan kelas tambahan show.

Untuk menambah pengurusan kumpulan seperti akordion pada kawasan boleh lipat, tambahkan atribut data data-parent="#selector". Rujuk demo untuk melihat tindakan ini.

Melalui JavaScript

Dayakan secara manual dengan:

$('.collapse').collapse()

Pilihan

Pilihan boleh dihantar melalui atribut data atau JavaScript. Untuk atribut data, tambahkan nama pilihan pada data-, seperti dalam data-parent="".

Nama taip Lalai Penerangan
ibu bapa pemilih | objek jQuery | elemen DOM salah Jika induk disediakan, maka semua elemen boleh lipat di bawah induk yang ditentukan akan ditutup apabila item boleh lipat ini ditunjukkan. (serupa dengan tingkah laku akordion tradisional - ini bergantung pada cardkelas). Atribut perlu ditetapkan pada kawasan boleh lipat sasaran.
togol boolean benar Menogol elemen boleh lipat pada seruan

Kaedah

Kaedah dan peralihan tak segerak

Semua kaedah API adalah tak segerak dan mulakan peralihan . Mereka kembali kepada pemanggil sebaik sahaja peralihan dimulakan tetapi sebelum ia tamat . Selain itu, panggilan kaedah pada komponen peralihan akan diabaikan .

Lihat dokumentasi JavaScript kami untuk mendapatkan maklumat lanjut .

.collapse(options)

Mengaktifkan kandungan anda sebagai elemen boleh lipat. Menerima pilihan pilihan object.

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

.collapse('toggle')

Menogol elemen boleh lipat kepada ditunjukkan atau disembunyikan. Kembali kepada pemanggil sebelum elemen boleh lipat sebenarnya telah ditunjukkan atau disembunyikan (iaitu sebelum shown.bs.collapseatau hidden.bs.collapseperistiwa berlaku).

.collapse('show')

Menunjukkan elemen boleh lipat. Kembali kepada pemanggil sebelum elemen boleh lipat sebenarnya telah ditunjukkan (iaitu sebelum shown.bs.collapseperistiwa berlaku).

.collapse('hide')

Menyembunyikan elemen yang boleh dilipat. Kembali kepada pemanggil sebelum elemen boleh lipat sebenarnya telah disembunyikan (iaitu sebelum hidden.bs.collapseperistiwa berlaku).

.collapse('dispose')

Memusnahkan keruntuhan unsur.

Peristiwa

Kelas runtuh Bootstrap mendedahkan beberapa peristiwa untuk menyambung ke fungsi runtuh.

Jenis acara Penerangan
tunjukkan.bs.runtuh Peristiwa ini menyala serta-merta apabila showkaedah contoh dipanggil.
ditunjukkan.bs.runtuh Peristiwa ini dicetuskan apabila elemen runtuh telah dilihat kepada pengguna (akan menunggu peralihan CSS selesai).
hide.bs.runtuh Acara ini dipecat serta-merta apabila hidekaedah telah dipanggil.
tersembunyi.bs.runtuh Peristiwa ini dicetuskan apabila elemen runtuh telah disembunyikan daripada pengguna (akan menunggu peralihan CSS selesai).
$('#myCollapsible').on('hidden.bs.collapse', function () {
  // do something...
})