ייַנבראָך
באַשטימען די וויזאַביליטי פון אינהאַלט אין דיין פּרויעקט מיט עטלעכע קלאסן און אונדזער דזשאַוואַסקריפּט פּלוגינס.
וויאזוי עס ארבעט
די ייַנבראָך דזשאַוואַסקריפּט פּלוגין איז געניצט צו ווייַזן און באַהאַלטן אינהאַלט. קנעפּלעך אָדער אַנגקערז זענען געניצט ווי טריגערז וואָס זענען מאַפּט צו ספּעציפיש עלעמענטן איר טאַגאַל. קאַלאַפּסינג אַן עלעמענט וועט ופלעבן די height
פון זיין קראַנט ווערט צו 0
. געגעבן ווי CSS כאַנדאַלז אַנאַמיישאַנז, איר קענען נישט נוצן padding
אויף אַ .collapse
עלעמענט. אַנשטאָט, נוצן די קלאַס ווי אַ פרייַ ראַפּינג עלעמענט.
prefers-reduced-motion
מידיאַ אָנפֿרעג. זען די
רידוסט באַוועגונג אָפּטיילונג פון אונדזער אַקסעסאַביליטי דאַקיומענטיישאַן .
בייַשפּיל
דריקט אויף די קנעפּלעך אונטן צו ווייַזן און באַהאַלטן אן אנדער עלעמענט דורך קלאַס ענדערונגען:
.collapse
באַהאַלט אינהאַלט.collapsing
איז געווענדט בעשאַס טראַנזישאַנז.collapse.show
ווייזט אינהאַלט
אין אַלגעמיין, מיר רעקאָמענדירן ניצן אַ קנעפּל מיט די data-bs-target
אַטריביוט. כאָטש ניט רעקאַמענדיד פֿון אַ סעמאַנטיק פונט פון מיינונג, איר קענען אויך נוצן אַ לינק מיט די href
אַטריביוט (און אַ 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"
אויף די קאָנטראָל אַנשטאָט. דער פּלוגין וועט אויטאָמאַטיש באַשטימען דעם אַטריביוט אויף די קאָנטראָל באזירט אויף צי די קאַלאַפּסאַבאַל עלעמענט איז געעפנט אָדער פֿאַרמאַכט (דורך דזשאַוואַסקריפּט, אָדער ווייַל דער באַניצער טריגערד אן אנדער קאָנטראָל עלעמענט אויך טייד צו דער זעלביקער קאַלאַפּסאַבאַל עלעמענט). אויב די HTML עלעמענט פון די קאָנטראָל עלעמענט איז נישט אַ קנעפּל (למשל, אַן <a>
אָדער <div>
), די אַטריביוטrole="button"
זאָל זיין מוסיף צו די עלעמענט.
אויב דיין קאָנטראָל עלעמענט איז טאַרגאַטינג אַ איין קאַלאַפּסאַבאַל עלעמענט - ד"ה די data-bs-target
אַטריביוט איז ווייזן צו אַ id
סעלעקטאָר - איר זאָל לייגן דעם aria-controls
אַטריביוט צו די קאָנטראָל עלעמענט, מיט id
די קאַלאַפּסאַבאַל עלעמענט. מאָדערן סקרין לייענער און ענלעך אַסיסטאַנץ טעקנאַלאַדזשיז נוצן דעם אַטריביוט צו צושטעלן יוזערז נאָך דורכוועג צו נאַוויגירן גלייך צו די קאַלאַפּסאַבאַל עלעמענט זיך.
באַמערקונג אַז די קראַנט ימפּלאַמענטיישאַן פון Bootstrap טוט נישט דעקן די פאַרשידן אַפּשאַנאַל קלאַוויאַטור ינטעראַקשאַנז דיסקרייבד אין די 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"
און אַ data-bs-target
צו דעם עלעמענט צו אויטאָמאַטיש באַשטימען קאָנטראָל פון איינער אָדער מער קאַלאַפּסאַבאַל עלעמענטן. דער data-bs-target
אַטריביוט אַקסעפּץ אַ CSS סעלעקטאָר צו צולייגן די ייַנבראָך. זייט זיכער צו לייגן די קלאַס 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 |
סעלעקטאָר | דזשקווערי כייפעץ | DOM עלעמענט | false |
אויב דער פאָטער איז צוגעשטעלט, אַלע קאַלאַפּסאַבאַל עלעמענטן אונטער די ספּעסיפיעד פאָטער וועט זיין פארמאכט ווען דעם קאַלאַפּסאַבאַל נומער איז געוויזן. (ענלעך צו טראדיציאנעלן אַקאָרדיאַן נאַטור - דאָס איז אָפענגיק אויף די card קלאַס). די אַטריביוט זאָל זיין באַשטימט אויף דער ציל קאַלאַפּסאַבאַל געגנט. |
toggle |
בוליאַן | true |
טאָגלעס די קאַלאַפּסאַבאַל עלעמענט אויף ינוואָקאַטיאָן |
מעטהאָדס
אַסינטשראָנאָוס מעטהאָדס און טראַנזישאַנז
אַלע אַפּי מעטהאָדס זענען ייסינגקראַנאַס און אָנהייבן אַ יבערגאַנג . זיי צוריקקומען צו די קאַללער ווי באַלד ווי די יבערגאַנג איז סטאַרטעד אָבער איידער עס ענדס . אין אַדישאַן, אַ מעטאָד רופן אויף אַ יבערגאַנג קאָמפּאָנענט וועט זיין איגנאָרירט .
זען אונדזער דזשאַוואַסקריפּט דאַקיומענטיישאַן פֿאַר מער אינפֿאָרמאַציע .
אַקטאַווייץ דיין אינהאַלט ווי אַ קאַלאַפּסאַבאַל עלעמענט. אַקסעפּץ אַן אַפּשאַנאַל אָפּציעס 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) |
געשעענישן
Bootstrap ס ייַנבראָך קלאַס יקספּאָוזיז עטלעכע געשעענישן פֿאַר כוקינג אין ייַנבראָך פאַנגקשאַנאַליטי.
געשעעניש טיפּ | באַשרייַבונג |
---|---|
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...
})