in English

संकुचित करा

काही वर्ग आणि आमच्या JavaScript प्लगइनसह तुमच्या प्रकल्पातील सामग्रीची दृश्यमानता टॉगल करा.

हे कसे कार्य करते

संकुचित JavaScript प्लगइन सामग्री दर्शविण्यासाठी आणि लपवण्यासाठी वापरले जाते. बटणे किंवा अँकर ट्रिगर म्हणून वापरले जातात जे तुम्ही टॉगल करता त्या विशिष्ट घटकांवर मॅप केले जातात. घटक संकुचित केल्याने heightत्याचे वर्तमान मूल्य ते अॅनिमेट होईल 0. CSS अॅनिमेशन कसे हाताळते ते दिले, तुम्ही घटकावर वापरू शकत paddingनाही .collapse. त्याऐवजी, स्वतंत्र रॅपिंग घटक म्हणून वर्ग वापरा.

या घटकाचा अॅनिमेशन प्रभाव prefers-reduced-motionमीडिया क्वेरीवर अवलंबून असतो. आमच्या प्रवेशयोग्यता दस्तऐवजीकरणाचा कमी गती विभाग पहा .

उदाहरण

वर्ग बदलांद्वारे दुसरा घटक दर्शविण्यासाठी आणि लपवण्यासाठी खालील बटणावर क्लिक करा:

  • .collapseसामग्री लपवते
  • .collapsingसंक्रमणादरम्यान लागू केले जाते
  • .collapse.showसामग्री दाखवते

साधारणपणे, आम्ही data-targetविशेषता असलेले बटण वापरण्याची शिफारस करतो. शब्दार्थाच्या दृष्टिकोनातून शिफारस केलेली नसली तरी, तुम्ही hrefविशेषता (आणि a role="button") सह लिंक देखील वापरू शकता. दोन्ही प्रकरणांमध्ये, data-toggle="collapse"आवश्यक आहे.

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>

क्षैतिज

कोलॅप्स प्लगइन क्षैतिज कोलॅप्सिंगला देखील समर्थन देते. ऐवजी .widthसंक्रमण करण्यासाठी सुधारक वर्ग जोडा आणि तात्काळ चाइल्ड घटकावर सेट करा. तुमचा स्वतःचा सानुकूल Sass लिहायला मोकळ्या मनाने, इनलाइन शैली वापरा किंवा आमच्या रुंदीच्या उपयुक्तता वापरा .widthheightwidth

कृपया लक्षात घ्या की खाली दिलेल्या उदाहरणामध्ये min-heightआमच्या दस्तऐवजांमध्ये अतिरीक्त रंग टाळण्यासाठी एक संच आहे, हे स्पष्टपणे आवश्यक नाही. फक्त widthऑन चाइल्ड घटक आवश्यक आहे.

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>

एकाधिक लक्ष्ये

A <button>किंवा त्याच्या किंवा <a>विशेषतामध्ये JQuery निवडक सह संदर्भ देऊन एकाधिक घटक दर्शवू आणि लपवू शकतो . एकापेक्षा जास्त किंवा घटक दर्शवू आणि लपवू शकतात जर ते प्रत्येकाने त्यांच्या किंवा विशेषताने त्याचा संदर्भ दिला असेलhrefdata-target<button><a>hrefdata-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>

एकॉर्डियन उदाहरण

कार्ड घटक वापरून , तुम्ही एकॉर्डियन तयार करण्यासाठी डीफॉल्ट संकुचित वर्तन वाढवू शकता. .accordionएकॉर्डियन शैली योग्यरित्या प्राप्त करण्यासाठी, आवरण म्हणून वापरण्याची खात्री करा .

प्रथम एकॉर्डियन पॅनेलसाठी काही प्लेसहोल्डर सामग्री. हे पॅनेल डीफॉल्टनुसार दर्शविले आहे, .showवर्गासाठी धन्यवाद.

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>

प्रवेशयोग्यता

aria-expandedनियंत्रण घटक जोडण्याची खात्री करा . ही विशेषता स्क्रीन रीडर आणि तत्सम सहाय्यक तंत्रज्ञानाच्या नियंत्रणाशी जोडलेल्या संकुचित घटकाची वर्तमान स्थिती स्पष्टपणे सांगते. संकुचित करण्यायोग्य घटक डीफॉल्टनुसार बंद असल्यास, नियंत्रण घटकावरील विशेषताचे मूल्य aria-expanded="false". तुम्ही showक्लास वापरून डिफॉल्टनुसार उघडण्यासाठी संकुचित करण्यायोग्य घटक सेट केला असल्यास, aria-expanded="true"त्याऐवजी नियंत्रण सेट करा. संकुचित करण्यायोग्य घटक उघडला किंवा बंद केला गेला आहे की नाही यावर (जावास्क्रिप्टद्वारे किंवा वापरकर्त्याने त्याच संकुचित घटकाशी जोडलेले दुसरे नियंत्रण घटक ट्रिगर केल्यामुळे) नियंत्रणावर प्लगइन स्वयंचलितपणे ही विशेषता टॉगल करेल. नियंत्रण घटकाचा HTML घटक बटण नसल्यास (उदा. an <a>किंवा <div>), विशेषताrole="button"घटकात जोडले पाहिजे.

जर तुमचा कंट्रोल एलिमेंट एकाच कोलॅप्सिबल एलिमेंटला टार्गेट करत असेल - म्हणजे data-targetअॅट्रीब्युट idसिलेक्टरला पॉइंट करत असेल तर - तुम्ही aria-controlsकंट्रोल एलिमेंटमध्ये अॅट्रिब्यूट जोडले पाहिजे, ज्यामध्ये idकोलॅप्सिबल एलिमेंट असेल. आधुनिक स्क्रीन रीडर आणि तत्सम सहाय्यक तंत्रज्ञान वापरकर्त्यांना थेट संकुचित घटकावर नेव्हिगेट करण्यासाठी अतिरिक्त शॉर्टकट प्रदान करण्यासाठी या गुणधर्माचा वापर करतात.

लक्षात घ्या की बूटस्ट्रॅपची सध्याची अंमलबजावणी ARIA ऑथरिंग प्रॅक्टिसेस गाईड अॅकॉर्डियन पॅटर्नमध्ये वर्णन केलेल्या विविध कीबोर्ड परस्परसंवादांना कव्हर करत नाही - तुम्हाला हे स्वतः सानुकूल JavaScript सह समाविष्ट करावे लागेल.

वापर

कोलॅप्स प्लगइन हेवी लिफ्टिंग हाताळण्यासाठी काही वर्गांचा वापर करते:

  • .collapseसामग्री लपवते
  • .collapse.showसामग्री दाखवते
  • .collapsingजेव्हा संक्रमण सुरू होते तेव्हा जोडले जाते आणि ते पूर्ण झाल्यावर काढले जाते

हे वर्ग मध्ये आढळू शकतात _transitions.scss.

डेटा विशेषतांद्वारे

एक किंवा अधिक संकुचित करण्यायोग्य घटकांचे नियंत्रण स्वयंचलितपणे नियुक्त करण्यासाठी घटकामध्ये फक्त data-toggle="collapse"आणि a जोडा. कोलॅप्स लागू करण्यासाठी विशेषता CSS निवडक स्वीकारते data-target. संकुचित घटकामध्ये data-targetवर्ग जोडण्याची खात्री करा . collapseतुम्हाला ते डीफॉल्ट उघडायचे असल्यास, अतिरिक्त वर्ग जोडा show.

संकुचित क्षेत्रामध्ये एकॉर्डियन सारखे गट व्यवस्थापन जोडण्यासाठी, डेटा विशेषता जोडा data-parent="#selector". हे कृतीत पाहण्यासाठी डेमोचा संदर्भ घ्या.

JavaScript द्वारे

यासह व्यक्तिचलितपणे सक्षम करा:

$('.collapse').collapse()

पर्याय

डेटा विशेषता किंवा JavaScript द्वारे पर्याय पास केले जाऊ शकतात. डेटा विशेषतांसाठी, पर्यायाचे नाव , मध्ये data-प्रमाणे जोडा data-parent="".

नाव प्रकार डीफॉल्ट वर्णन
पालक निवडकर्ता | jQuery ऑब्जेक्ट | DOM घटक खोटे पालक प्रदान केले असल्यास, जेव्हा हा संकुचित करता येणारा आयटम दर्शविला जाईल तेव्हा निर्दिष्ट केलेल्या पालक अंतर्गत सर्व संकुचित करण्यायोग्य घटक बंद केले जातील. (पारंपारिक एकॉर्डियन वर्तन प्रमाणेच - हे cardवर्गावर अवलंबून आहे). लक्ष्य संकुचित क्षेत्रावर विशेषता सेट करणे आवश्यक आहे.
टॉगल बुलियन खरे आमंत्रणावर संकुचित करण्यायोग्य घटक टॉगल करते

पद्धती

असिंक्रोनस पद्धती आणि संक्रमणे

सर्व API पद्धती असिंक्रोनस आहेत आणि एक संक्रमण सुरू करतात . संक्रमण सुरू होताच परंतु ते संपण्यापूर्वी ते कॉलरकडे परत जातात . याव्यतिरिक्त, संक्रमण घटकावरील पद्धत कॉलकडे दुर्लक्ष केले जाईल .

अधिक माहितीसाठी आमचे JavaScript दस्तऐवजीकरण पहा .

.collapse(options)

तुमची सामग्री संकुचित करण्यायोग्य घटक म्हणून सक्रिय करते. पर्यायी पर्याय स्वीकारतो object.

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

.collapse('toggle')

दर्शविण्यासाठी किंवा लपविण्यासाठी संकुचित करण्यायोग्य घटक टॉगल करते. संकुचित करण्यायोग्य घटक प्रत्यक्षात दर्शविले किंवा लपविण्यापूर्वी (म्हणजे shown.bs.collapseकिंवा hidden.bs.collapseघटना घडण्यापूर्वी) कॉलरकडे परत येते.

.collapse('show')

एक संकुचित घटक दर्शविते. कोलॅप्सिबल घटक प्रत्यक्षात दाखवण्यापूर्वी कॉलरकडे परत येतो (म्हणजे shown.bs.collapseइव्हेंट होण्यापूर्वी).

.collapse('hide')

संकुचित करता येणारा घटक लपवतो. संकुचित करण्यायोग्य घटक प्रत्यक्षात लपविण्यापूर्वी (म्हणजे hidden.bs.collapseघटना घडण्यापूर्वी) कॉलरकडे परत येते.

.collapse('dispose')

घटकाचा नाश होतो.

कार्यक्रम

बूटस्ट्रॅपचा कोलॅप्स क्लास कोलॅप्स फंक्शनॅलिटीमध्ये जोडण्यासाठी काही इव्हेंट्स उघड करतो.

कार्यक्रमाचा प्रकार वर्णन
show.bs.collaps showजेव्हा उदाहरण पद्धत कॉल केली जाते तेव्हा हा इव्हेंट लगेच फायर होतो .
दाखवले.bs.collaps जेव्हा संकुचित घटक वापरकर्त्यासाठी दृश्यमान केला जातो तेव्हा हा कार्यक्रम काढला जातो (CSS संक्रमण पूर्ण होण्याची प्रतीक्षा करेल).
hide.bs.collaps hideपद्धत कॉल केल्यावर हा कार्यक्रम ताबडतोब उडाला आहे.
hidden.bs.collaps जेव्हा संकुचित घटक वापरकर्त्यापासून लपविला जातो तेव्हा हा कार्यक्रम काढला जातो (CSS संक्रमण पूर्ण होण्याची प्रतीक्षा करेल).
$('#myCollapsible').on('hidden.bs.collapse', function () {
  // do something...
})