కుదించు
కొన్ని తరగతులు మరియు మా JavaScript ప్లగిన్లతో మీ ప్రాజెక్ట్ అంతటా కంటెంట్ దృశ్యమానతను టోగుల్ చేయండి.
అది ఎలా పని చేస్తుంది
కుప్పకూలిన జావాస్క్రిప్ట్ ప్లగ్ఇన్ కంటెంట్ను చూపించడానికి మరియు దాచడానికి ఉపయోగించబడుతుంది. బటన్లు లేదా యాంకర్లు మీరు టోగుల్ చేసే నిర్దిష్ట అంశాలకు మ్యాప్ చేయబడిన ట్రిగ్గర్లుగా ఉపయోగించబడతాయి. మూలకాన్ని కుదించడం వలన height
దాని ప్రస్తుత విలువ నుండి యానిమేట్ అవుతుంది 0
. CSS యానిమేషన్లను ఎలా నిర్వహిస్తుందో, మీరు padding
మూలకంపై ఉపయోగించలేరు .collapse
. బదులుగా, తరగతిని స్వతంత్ర చుట్టే మూలకం వలె ఉపయోగించండి.
prefers-reduced-motion
మీడియా ప్రశ్నపై ఆధారపడి ఉంటుంది. మా యాక్సెసిబిలిటీ డాక్యుమెంటేషన్ యొక్క తగ్గిన చలన విభాగాన్ని చూడండి
.
ఉదాహరణ
తరగతి మార్పుల ద్వారా మరొక మూలకాన్ని చూపించడానికి మరియు దాచడానికి దిగువ బటన్లను క్లిక్ చేయండి:
.collapse
కంటెంట్ను దాచిపెడుతుంది.collapsing
పరివర్తన సమయంలో వర్తించబడుతుంది.collapse.show
కంటెంట్ చూపిస్తుంది
data-bs-target
సాధారణంగా, మేము లక్షణంతో బటన్ను ఉపయోగించమని సిఫార్సు చేస్తున్నాము . సెమాంటిక్ దృక్కోణం నుండి సిఫార్సు చేయనప్పటికీ, మీరు href
లక్షణం (మరియు a role="button"
)తో లింక్ను కూడా ఉపయోగించవచ్చు. రెండు సందర్భాల్లో, data-bs-toggle="collapse"
ఇది అవసరం.
<p>
<a class="btn btn-primary" data-bs-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
Link with href
</a>
<button class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample">
Button with data-bs-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>
అడ్డంగా
పతనం ప్లగ్ఇన్ క్షితిజ సమాంతర కూలిపోవడానికి కూడా మద్దతు ఇస్తుంది. బదులుగా .collapse-horizontal
పరివర్తనకు మాడిఫైయర్ క్లాస్ని జోడించి, తక్షణ చైల్డ్ ఎలిమెంట్పై సెట్ చేయండి. మీ స్వంత కస్టమ్ సాస్ని వ్రాయడానికి సంకోచించకండి, ఇన్లైన్ స్టైల్లను ఉపయోగించండి లేదా మా వెడల్పు వినియోగాలను ఉపయోగించండి .width
height
width
min-height
మా డాక్స్లో అధిక రీపెయింట్లను నివారించడానికి సెట్ను కలిగి ఉన్నప్పటికీ, ఇది స్పష్టంగా అవసరం లేదని గమనించండి.
చైల్డ్ ఎలిమెంట్ ఆన్ మాత్రమే width
అవసరం.
<p>
<button class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-target="#collapseWidthExample" aria-expanded="false" aria-controls="collapseWidthExample">
Toggle width collapse
</button>
</p>
<div style="min-height: 120px;">
<div class="collapse collapse-horizontal" id="collapseWidthExample">
<div class="card card-body" style="width: 300px;">
This is some placeholder content for a horizontal collapse. It's hidden by default and shown when triggered.
</div>
</div>
</div>
బహుళ లక్ష్యాలు
ఎ <button>
లేదా బహుళ మూలకాలను దాని లేదా లక్షణంలో <a>
సెలెక్టర్తో సూచించడం ద్వారా వాటిని చూపవచ్చు మరియు దాచవచ్చు . ఒక మూలకాన్ని వాటి లేదా లక్షణంతో సూచిస్తే బహుళ లేదా చూపవచ్చు మరియు దాచవచ్చుhref
data-bs-target
<button>
<a>
href
data-bs-target
<p>
<a class="btn btn-primary" data-bs-toggle="collapse" href="#multiCollapseExample1" role="button" aria-expanded="false" aria-controls="multiCollapseExample1">Toggle first element</a>
<button class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-target="#multiCollapseExample2" aria-expanded="false" aria-controls="multiCollapseExample2">Toggle second element</button>
<button class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-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>
సౌలభ్యాన్ని
aria-expanded
నియంత్రణ మూలకానికి జోడించాలని నిర్ధారించుకోండి . ఈ లక్షణం స్క్రీన్ రీడర్లకు మరియు ఇలాంటి సహాయక సాంకేతికతలకు నియంత్రణతో ముడిపడి ఉన్న ధ్వంసమయ్యే మూలకం యొక్క ప్రస్తుత స్థితిని స్పష్టంగా తెలియజేస్తుంది. ధ్వంసమయ్యే మూలకం డిఫాల్ట్గా మూసివేయబడితే, నియంత్రణ మూలకంపై ఉన్న లక్షణం విలువను కలిగి ఉండాలి aria-expanded="false"
. మీరు show
క్లాస్ని ఉపయోగించి డిఫాల్ట్గా ధ్వంసమయ్యే ఎలిమెంట్ని ఓపెన్ అయ్యేలా సెట్ aria-expanded="true"
చేసి ఉంటే, బదులుగా కంట్రోల్లో సెట్ చేయండి. ధ్వంసమయ్యే మూలకం తెరవబడిందా లేదా మూసివేయబడిందా లేదా అనేదానిపై ఆధారపడి ప్లగ్ఇన్ ఈ లక్షణాన్ని స్వయంచాలకంగా టోగుల్ చేస్తుంది (JavaScript ద్వారా లేదా వినియోగదారు అదే ధ్వంసమయ్యే మూలకంతో ముడిపడి ఉన్న మరొక నియంత్రణ మూలకాన్ని కూడా ప్రేరేపించినందున). నియంత్రణ మూలకం యొక్క HTML మూలకం బటన్ కానట్లయితే (ఉదా, ఒక <a>
లేదా <div>
), లక్షణంrole="button"
మూలకానికి జోడించాలి.
మీ నియంత్రణ మూలకం ఒకే ధ్వంసమయ్యే మూలకాన్ని లక్ష్యంగా చేసుకుంటే - అంటే data-bs-target
లక్షణం ఎంపిక సాధనాన్ని సూచిస్తున్నట్లయితే - మీరు ధ్వంసమయ్యే మూలకాన్ని కలిగి ఉన్న నియంత్రణ మూలకానికి లక్షణాన్ని id
జోడించాలి . ఆధునిక స్క్రీన్ రీడర్లు మరియు ఇలాంటి సహాయక సాంకేతికతలు వినియోగదారులకు నేరుగా ధ్వంసమయ్యే ఎలిమెంట్కు నావిగేట్ చేయడానికి అదనపు షార్ట్కట్లను అందించడానికి ఈ లక్షణాన్ని ఉపయోగించుకుంటాయి.aria-controls
id
బూట్స్ట్రాప్ యొక్క ప్రస్తుత అమలు WAI-ARIA ఆథరింగ్ ప్రాక్టీసెస్ 1.1 అకార్డియన్ నమూనాలో వివరించిన వివిధ ఐచ్ఛిక కీబోర్డ్ ఇంటరాక్షన్లను కవర్ చేయదని గమనించండి - మీరు వీటిని కస్టమ్ జావాస్క్రిప్ట్తో చేర్చవలసి ఉంటుంది.
సాస్
వేరియబుల్స్
$transition-collapse: height .35s ease;
$transition-collapse-width: width .35s ease;
తరగతులు
కుదించు పరివర్తన తరగతులను కనుగొనవచ్చు, scss/_transitions.scss
ఎందుకంటే ఇవి బహుళ భాగాలు (కూలిపోవడం మరియు అకార్డియన్) అంతటా భాగస్వామ్యం చేయబడతాయి.
.collapse {
&:not(.show) {
display: none;
}
}
.collapsing {
height: 0;
overflow: hidden;
@include transition($transition-collapse);
&.collapse-horizontal {
width: 0;
height: auto;
@include transition($transition-collapse-width);
}
}
వాడుక
కుప్పకూలిన ప్లగ్ఇన్ భారీ ట్రైనింగ్ను నిర్వహించడానికి కొన్ని తరగతులను ఉపయోగిస్తుంది:
.collapse
కంటెంట్ను దాచిపెడుతుంది.collapse.show
కంటెంట్ని చూపుతుంది.collapsing
పరివర్తన ప్రారంభమైనప్పుడు జోడించబడుతుంది మరియు అది ముగిసినప్పుడు తీసివేయబడుతుంది
ఈ తరగతులను లో చూడవచ్చు _transitions.scss
.
డేటా లక్షణాల ద్వారా
ఒకటి లేదా అంతకంటే ఎక్కువ ధ్వంసమయ్యే ఎలిమెంట్ల నియంత్రణను స్వయంచాలకంగా కేటాయించడానికి మూలకానికి జోడించి data-bs-toggle="collapse"
a జోడించండి . కుప్పకూలింపును వర్తింపజేయడానికి లక్షణం CSS ఎంపికను అంగీకరిస్తుంది data-bs-target
. ధ్వంసమయ్యే మూలకానికి data-bs-target
తరగతిని జోడించాలని నిర్ధారించుకోండి . collapse
మీరు దీన్ని డిఫాల్ట్గా తెరవాలనుకుంటే, అదనపు తరగతిని జోడించండి show
.
ధ్వంసమయ్యే ప్రాంతానికి అకార్డియన్ లాంటి సమూహ నిర్వహణను జోడించడానికి, డేటా లక్షణాన్ని జోడించండి data-bs-parent="#selector"
. మరింత సమాచారం కోసం అకార్డియన్ పేజీని చూడండి .
జావాస్క్రిప్ట్ ద్వారా
దీనితో మాన్యువల్గా ప్రారంభించండి:
var collapseElementList = [].slice.call(document.querySelectorAll('.collapse'))
var collapseList = collapseElementList.map(function (collapseEl) {
return new bootstrap.Collapse(collapseEl)
})
ఎంపికలు
ఎంపికలు డేటా లక్షణాలు లేదా జావాస్క్రిప్ట్ ద్వారా పంపబడతాయి. డేటా అట్రిబ్యూట్ల కోసం, ఎంపిక పేరును data-bs-
, లో వలె జత చేయండి data-bs-parent=""
.
పేరు | టైప్ చేయండి | డిఫాల్ట్ | వివరణ |
---|---|---|---|
parent |
సెలెక్టర్ | j క్వెరీ వస్తువు | DOM మూలకం | false |
పేరెంట్ అందించబడితే, ఈ ధ్వంసమయ్యే అంశం చూపబడినప్పుడు పేర్కొన్న పేరెంట్ కింద అన్ని ధ్వంసమయ్యే అంశాలు మూసివేయబడతాయి. (సాంప్రదాయ అకార్డియన్ ప్రవర్తన వలె - ఇది card తరగతిపై ఆధారపడి ఉంటుంది). లక్ష్యం ధ్వంసమయ్యే ప్రాంతంపై లక్షణాన్ని సెట్ చేయాలి. |
toggle |
బూలియన్ | true |
ఆహ్వానంపై ధ్వంసమయ్యే మూలకాన్ని టోగుల్ చేస్తుంది |
పద్ధతులు
అసమకాలిక పద్ధతులు మరియు పరివర్తనాలు
అన్ని API పద్ధతులు అసమకాలికమైనవి మరియు పరివర్తనను ప్రారంభిస్తాయి . వారు పరివర్తన ప్రారంభమైన వెంటనే కానీ అది ముగిసేలోపు కాలర్ వద్దకు తిరిగి వస్తారు . అదనంగా, పరివర్తన భాగంపై పద్ధతి కాల్ విస్మరించబడుతుంది .
మరింత సమాచారం కోసం మా జావాస్క్రిప్ట్ డాక్యుమెంటేషన్ చూడండి .
మీ కంటెంట్ను ధ్వంసమయ్యే మూలకం వలె సక్రియం చేస్తుంది. ఐచ్ఛిక ఎంపికలను అంగీకరిస్తుంది object
.
మీరు కన్స్ట్రక్టర్తో పతనమైన ఉదాహరణను సృష్టించవచ్చు, ఉదాహరణకు:
var myCollapse = document.getElementById('myCollapse')
var bsCollapse = new bootstrap.Collapse(myCollapse, {
toggle: false
})
పద్ధతి | వివరణ |
---|---|
toggle |
ధ్వంసమయ్యే మూలకాన్ని చూపడానికి లేదా దాచడానికి టోగుల్ చేస్తుంది. ధ్వంసమయ్యే మూలకం వాస్తవానికి చూపబడటానికి లేదా దాచబడటానికి ముందు (అంటే shown.bs.collapse లేదా hidden.bs.collapse సంఘటన జరగడానికి ముందు) కాలర్కు తిరిగి వస్తుంది. |
show |
ధ్వంసమయ్యే మూలకాన్ని చూపుతుంది. ధ్వంసమయ్యే మూలకం వాస్తవంగా చూపబడక ముందే కాలర్కి తిరిగి వస్తుంది (ఉదా, shown.bs.collapse ఈవెంట్ జరగడానికి ముందు). |
hide |
ధ్వంసమయ్యే మూలకాన్ని దాచిపెడుతుంది. ధ్వంసమయ్యే మూలకం వాస్తవానికి దాచబడక ముందే కాలర్కు తిరిగి వస్తుంది (ఉదా, hidden.bs.collapse ఈవెంట్ జరగడానికి ముందు). |
dispose |
మూలకం యొక్క పతనాన్ని నాశనం చేస్తుంది. (DOM మూలకంపై నిల్వ చేసిన డేటాను తొలగిస్తుంది) |
getInstance |
DOM ఎలిమెంట్తో అనుబంధించబడిన పతనం ఉదాహరణను పొందడానికి మిమ్మల్ని అనుమతించే స్టాటిక్ పద్ధతి, మీరు దీన్ని ఇలా ఉపయోగించవచ్చు:bootstrap.Collapse.getInstance(element) |
getOrCreateInstance |
DOM ఎలిమెంట్కు అనుబంధించబడిన పతన దృష్టాంతాన్ని అందించే స్టాటిక్ పద్ధతి లేదా అది ప్రారంభించబడనట్లయితే కొత్తదాన్ని సృష్టించండి. మీరు దీన్ని ఇలా ఉపయోగించవచ్చు:bootstrap.Collapse.getOrCreateInstance(element) |
ఈవెంట్స్
బూట్స్ట్రాప్ యొక్క పతనం క్లాస్ పతనం ఫంక్షనాలిటీకి హుక్ చేయడం కోసం కొన్ని ఈవెంట్లను బహిర్గతం చేస్తుంది.
ఈవెంట్ రకం | వివరణ |
---|---|
show.bs.collapse |
ఇన్స్టెన్స్ మెథడ్ని పిలిచినప్పుడు ఈ ఈవెంట్ వెంటనే ఫైర్ అవుతుంది show . |
shown.bs.collapse |
పతనం మూలకం వినియోగదారుకు కనిపించేలా చేసినప్పుడు ఈ ఈవెంట్ తొలగించబడుతుంది (CSS పరివర్తనాలు పూర్తయ్యే వరకు వేచి ఉంటుంది). |
hide.bs.collapse |
hide పద్ధతిని పిలిచినప్పుడు ఈ సంఘటన వెంటనే తొలగించబడుతుంది . |
hidden.bs.collapse |
వినియోగదారు నుండి పతనం మూలకం దాచబడినప్పుడు ఈ ఈవెంట్ తొలగించబడుతుంది (CSS పరివర్తనాలు పూర్తయ్యే వరకు వేచి ఉంటుంది). |
var myCollapsible = document.getElementById('myCollapsible')
myCollapsible.addEventListener('hidden.bs.collapse', function () {
// do something...
})