سقوط
د څو ټولګیو او زموږ د جاواسکریپټ پلگ انونو سره ستاسو د پروژې په اوږدو کې د مینځپانګې لید بدل کړئ.
څنګه کار کوي
د جاواسکریپټ سقوط پلگ ان د مینځپانګې ښودلو او پټولو لپاره کارول کیږي. تڼۍ یا اینکرونه د محرکونو په توګه کارول کیږي کوم چې د ځانګړو عناصرو سره نقشه شوي چې تاسو یې بدل کړئ. د یو عنصر ماتول به 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
د خپل دودیز Sass لیکلو لپاره وړیا احساس وکړئ، د انلاین سټایلونه وکاروئ، یا زموږ د پراخوالي اسانتیاوې وکاروئ .
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>
څو هدفونه
A <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"
نو پرځای یې کنټرول تنظیم کړئ. پلگ ان به په اوتومات ډول دا خاصیت په کنټرول کې د دې پراساس بدل کړي چې ایا د سقوط وړ عنصر خلاص شوی یا بند شوی دی (د جاواسکریپټ له لارې ، یا دا چې کارونکي بل کنټرول عنصر رامینځته کړی چې د ورته سقوط وړ عنصر سره تړاو لري). که چیرې د کنټرول عنصر HTML عنصر تڼۍ نه وي (د مثال په توګه، یو <a>
یا <div>
)، خاصیتrole="button"
باید عنصر ته اضافه شي.
که ستاسو د کنټرول عنصر یو واحد مات کیدونکی عنصر په نښه کوي - د بیلګې په توګه data-bs-target
خاصیت یو id
انتخاب کونکي ته اشاره کوي - تاسو باید aria-controls
د کنټرول عنصر ته خاصیت اضافه کړئ ، چې id
د سقوط وړ عنصر لري. عصري سکرین لوستونکي او ورته مرستندویه ټیکنالوژي د دې ځانګړتیا څخه کار اخلي ترڅو کاروونکو ته اضافي شارټ کټونه چمتو کړي ترڅو مستقیم د سقوط وړ عنصر ته لاړ شي.
په یاد ولرئ چې د بوټسټریپ اوسنۍ پلي کول د کیبورډ مختلف اختیاري تعاملات نه پوښي چې د ARIA لیکوالۍ طرزالعمل لارښود اکارډین نمونه کې تشریح شوي - تاسو به اړتیا ولرئ دا پخپله د دودیز جاواسکریپټ سره شامل کړئ.
ساس
متغیرات
$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 data-bs-target
په اتوماتيک ډول د یو یا ډیرو ماتیدو وړ عناصرو کنټرول وټاکئ. خاصیت د data-bs-target
CSS انتخاب کونکی مني چې د سقوط پلي کولو لپاره. ډاډ ترلاسه کړئ چې ټولګي collapse
د سقوط وړ عنصر ته اضافه کړئ. که تاسو غواړئ چې دا په ډیفالټ خلاص شي، اضافي ټولګي اضافه کړئ show
.
د تړل کیدو وړ ساحې ته د اکارډین په څیر ګروپ مدیریت اضافه کولو لپاره ، د ډیټا خاصیت اضافه کړئ data-bs-parent="#selector"
. د لا زیاتو معلوماتو لپاره accordion پاڼې ته مراجعه وکړئ .
د جاواسکریپټ له لارې
په لاسي ډول د دې سره فعال کړئ:
const collapseElementList = document.querySelectorAll('.collapse')
const collapseList = [...collapseElementList].map(collapseEl => new bootstrap.Collapse(collapseEl))
اختیارونه
لکه څنګه چې اختیارونه د ډیټا ځانګړتیاو یا جاوا سکریپټ له لارې لیږدول کیدی شي، تاسو کولی شئ د اختیار نوم په کې ضمیمه کړئ data-bs-
، لکه څنګه چې په کې data-bs-animation="{value}"
. ډاډ ترلاسه کړئ چې د اختیار نوم د قضیې ډول د " camelCase " څخه " کباب-کیس " ته بدل کړئ کله چې د ډیټا ځانګړتیاو له لارې اختیارونه تیریږي. د مثال په توګه، د data-bs-custom-class="beautifier"
ځای پرځای وکاروئ data-bs-customClass="beautifier"
.
د بوټسټریپ 5.2.0 پورې ، ټولې برخې د تجربې خوندي شوي ډیټا ځانګړتیا ملاتړ کوي data-bs-config
چې کولی شي د JSON سټرینګ په توګه د ساده اجزاو ترتیب ځای په ځای کړي. کله چې یو عنصر ولري data-bs-config='{"delay":0, "title":123}'
او data-bs-title="456"
ځانګړتیاوې ولري، وروستی title
ارزښت به وي 456
او د جلا معلوماتو ځانګړتیاوې به په ورکړل شوي ارزښتونو باندې تیریږي data-bs-config
. برسېره پردې، د موجوده ډیټا ځانګړتیاوې د JSON ارزښتونو لکه data-bs-delay='{"show":0,"hide":150}'
.
نوم | ډول | ډیفالټ | تفصیل |
---|---|---|---|
parent |
انتخاب کونکی، د DOM عنصر | null |
که چیرې والدین چمتو شي، نو د ټاکل شوي والدین لاندې ټول تړل کیدونکي عناصر به وتړل شي کله چې دا د ماتیدو وړ توکي وښودل شي. (د دودیز اکارډین چلند سره ورته - دا په card ټولګي پورې اړه لري). خاصیت باید د هدف د سقوط وړ ساحه کې تنظیم شي. |
toggle |
بولین | true |
په بلنه کې د سقوط وړ عنصر بدلوي. |
میتودونه
غیر متناسب میتودونه او لیږدونه
ټولې API میتودونه غیر متزلزل دي او لیږد پیل کوي . کله چې لیږد پیل شي دوی بیرته زنګ وهونکي ته بیرته راځي مګر مخکې له دې چې پای ته ورسیږي . برسېره پردې، د لیږدونکي برخې په اړه د میتود غوښتنې به له پامه غورځول شي .
ستاسو مینځپانګه د سقوط وړ عنصر په توګه فعالوي. یو اختیاري اختیارونه مني object
.
تاسو کولی شئ د جوړونکي سره د سقوط مثال رامینځته کړئ ، د مثال په توګه:
const bsCollapse = new bootstrap.Collapse('#myCollapse', {
toggle: false
})
طریقه | تفصیل |
---|---|
dispose |
د یو عنصر سقوط له منځه وړي. (د DOM عنصر کې زیرمه شوي معلومات لرې کوي) |
getInstance |
جامد میتود چې تاسو ته اجازه درکوي د DOM عنصر پورې اړوند د سقوط مثال ترلاسه کړئ ، تاسو کولی شئ دا د دې په څیر وکاروئ: bootstrap.Collapse.getInstance(element) . |
getOrCreateInstance |
جامد میتود چې د DOM عنصر پورې تړلی د سقوط مثال بیرته راګرځوي یا یو نوی رامینځته کړي که چیرې دا پیل نه وي. تاسو کولی شئ دا په لاندې ډول وکاروئ: bootstrap.Collapse.getOrCreateInstance(element) . |
hide |
د سقوط وړ عنصر پټوي. زنګ وهونکي ته بیرته راستنیږي مخکې لدې چې د سقوط وړ عنصر واقعیا پټ شوی وي (د بیلګې په توګه ، مخکې له دې چې hidden.bs.collapse پیښه پیښ شي). |
show |
د سقوط وړ عنصر ښیې. زنګ وهونکي ته بیرته راستنیږي مخکې لدې چې د سقوط وړ عنصر واقعیا وښودل شي (د بیلګې په توګه ، مخکې له دې چې shown.bs.collapse پیښه پیښ شي). |
toggle |
د ښودلو یا پټولو لپاره د سقوط وړ عنصر بدلوي. زنګ وهونکي ته بیرته راستنیږي مخکې لدې چې د سقوط وړ عنصر واقعیا ښودل شوی یا پټ شوی وي (د بیلګې په توګه مخکې لدې چې shown.bs.collapse یا hidden.bs.collapse پیښه پیښ شي). |
پیښې
د بوټسټریپ سقوط ټولګي د سقوط فعالیت ته د رسیدو لپاره یو څو پیښې افشا کوي.
د پیښې ډول | تفصیل |
---|---|
hide.bs.collapse |
دا پیښه سمدلاسه له مینځه وړل کیږي کله چې hide میتود ویل کیږي. |
hidden.bs.collapse |
دا پیښه له مینځه وړل کیږي کله چې د سقوط عنصر د کارونکي څخه پټ شوی وي (د CSS لیږد بشپړیدو ته به انتظار وکړي). |
show.bs.collapse |
دا پیښه سمدلاسه اوریږي کله چې د show مثال میتود ویل کیږي. |
shown.bs.collapse |
دا پیښه له مینځه وړل کیږي کله چې د سقوط عنصر کارونکي ته ښکاره شي (د CSS لیږد بشپړیدو ته به انتظار وکړي). |
const myCollapsible = document.getElementById('myCollapsible')
myCollapsible.addEventListener('hidden.bs.collapse', event => {
// do something...
})