Jiberhevketin
Bi çend dersan û pêvekên me yên JavaScript-ê dîtina naverokê li seranserê projeya xwe biguhezînin.
Bişkojkên jêrîn bikirtînin da ku elementek din bi guhertinên polê ve nîşan bidin û veşêrin:
.collapse
naverokê vedişêre.collapsing
di dema veguherînan de tê sepandin.collapse.show
naverokê nîşan dide
Hûn dikarin girêdanek bi href
taybetmendiyê, an bişkokek bi data-target
taybetmendiyê bikar bînin. Di her du rewşan de, data-toggle="collapse"
pêdivî ye.
<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">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
</div>
</div>
A <button>
an <a>
dikare gelek hêmanan nîşan bide û veşêre bi referanskirina wan bi hilbijêrek JQuery di nav xwe href
an data-target
taybetmendiya xwe de. Gelek <button>
an jî <a>
dikarin hêmanekê nîşan bidin û veşêrin heke ew her yek bi taybetmendiya href
xwe jê re referans bikindata-target
<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">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
</div>
</div>
</div>
<div class="col">
<div class="collapse multi-collapse" id="multiCollapseExample2">
<div class="card card-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
</div>
</div>
</div>
</div>
Bi karanîna pêkhateya qertê , hûn dikarin tevgera hilweşîna xwerû dirêj bikin da ku akordeyonek biafirînin.
<div id="accordion">
<div class="card">
<div class="card-header" id="headingOne">
<h5 class="mb-0">
<button class="btn btn-link" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
Collapsible Group Item #1
</button>
</h5>
</div>
<div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion">
<div class="card-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="headingTwo">
<h5 class="mb-0">
<button class="btn btn-link collapsed" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
Collapsible Group Item #2
</button>
</h5>
</div>
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordion">
<div class="card-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="headingThree">
<h5 class="mb-0">
<button class="btn btn-link collapsed" data-toggle="collapse" data-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
Collapsible Group Item #3
</button>
</h5>
</div>
<div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#accordion">
<div class="card-body">
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
</div>
</div>
</div>
</div>
Bawer bikin aria-expanded
ku li hêmana kontrolê zêde bikin. Ev taybetmendî bi eşkere rewşa heyî ya hêmana hilweşandî ya ku bi kontrola xwendevanên ekranê û teknolojiyên arîkar ên mîna wan ve girêdayî ye radigihîne. Ger hêmana hilavêtinê ji hêla xwerû ve girtî be, divê taybetmendiya li ser hêmana kontrolê xwedî nirxek be aria-expanded="false"
. Ger we hêmana hilavêtinê destnîşan kiriye ku ji hêla xwerû ve bi karanîna show
polê vekirî be, aria-expanded="true"
li şûna wê li ser kontrolê bicîh bikin. Pêvek dê bixweber vê taybetmendiyê li ser kontrolê biguhezîne li ser bingeha ku hêmana hilweşandî hatiye vekirin an girtî (bi rêya JavaScript, an jî ji ber ku bikarhêner hêmanek kontrolê ya din jî bi heman hêmana têkçûyî ve girêdaye vekiriye). Ger hêmana HTML ya hêmana kontrolê ne bişkokek be (mînak, an <a>
an <div>
), taybetmendîrole="button"
divê li hêmanê were zêdekirin.
Ger hêmana weya kontrolê hêmanek yekane ya hilaweşker hedef digire - ango data-target
taybetmendî îşaret bi id
hilbijêrek dike - divê hûn aria-controls
taybetmendiyê li hêmana kontrolê zêde bikin, ku id
hêmana hilavêtinê tê de ye. Xwendevanên ekrana nûjen û teknolojiyên arîkar ên bi vî rengî vê taybetmendiyê bikar tînin da ku ji bikarhêneran kurtebirên zêde peyda bikin da ku rasterast li hêmana hilweşandî bixwe bigerin.
Bala xwe bidinê ku bicîhkirina Bootstrap-ê ya heyî têkiliyên cihêreng ên klavyeyê yên ku di şêwaza akordeyonê ya WAI-ARIA Practices Authoring 1.1 de têne diyar kirin venagire - hûn ê hewce bikin ku van bi xwe bi JavaScript-a xwerû re têkildar bikin.
Pêveka hilweşînê ji bo hilgirtina giran çend dersan bikar tîne:
.collapse
naverokê vedişêre.collapse.show
naverokê nîşan dide.collapsing
dema ku veguheztin dest pê dike tê zêdekirin, û dema ku ew qediya tê jêbirin
Van dersan dikarin li _transitions.scss
.
Tenê data-toggle="collapse"
û a data-target
li hêmanê zêde bikin da ku bixweber kontrola yek an jî çend hêmanên hilweşandî destnîşan bikin. Taybetmendî data-target
hilbijêrek CSS-ê qebûl dike ku hilweşînê li ser bicîh bike. Bawer bikin ku polê collapse
li hêmana hilweşandî zêde bikin. Heke hûn dixwazin ku ew bi xweber vebe, çîna pêvek zêde bikin show
.
Ji bo ku rêveberiya komê ya mîna akordeyonê li deverek hilweşandî zêde bikin, taybetmendiya daneyê zêde bikin data-parent="#selector"
. Ji bo ku hûn vê di çalakiyê de bibînin, serî li demo bidin.
Bi destan çalak bike bi:
Vebijark dikarin bi taybetmendiyên daneyan an JavaScriptê ve werin derbas kirin. Ji bo taybetmendiyên daneyê, navê vebijarkê lê zêde bikin data-
, wekî di data-parent=""
.
Nav | Awa | Destçûnî | Terîf |
---|---|---|---|
dê û bav | hilbijêr | jQuery object | hêmana DOM | şaş | Ger dêûbav were peyda kirin, wê hingê dê hemî hêmanên hilweşandî yên di binê dêûbavê diyarkirî de werin girtin dema ku ev tişta hilvekirî were xuyang kirin. (wek behreya akordionê ya kevneşopî - ev bi polê ve girêdayî card ye). Pêdivî ye ku taybetmendî li ser devera hilweşandî ya armanc were danîn. |
toggle | boolean | rast | Li ser bangkirinê hêmana hilweşandî vedike |
Rêbaz û veguherînên asynchronous
Hemî rêbazên API-ê asînkron in û veguherînek dest pê dikin . Gava ku veguhêz dest pê kir lê berî ku biqede ew vedigerin bangkerê . Wekî din, bangek rêbazek li ser pêkhateyek veguhêz dê were paşguh kirin.
Naveroka we wekî hêmanek hilweşandî çalak dike. Vebijarkek vebijarkî qebûl object
dike.
Hêmanek dagirtî ji bo xuyangkirin an veşartinê vedigire. Berî ku hêmana hilavêtinê bi rastî were xuyang kirin an veşartin (ango berî ku bûyer shown.bs.collapse
an hidden.bs.collapse
bûyer çêbibe) vedigere bangkerê.
Elementeke davekirî nîşan dide. Berî ku hêmana hilavêtinê bi rastî were xuyang kirin (ango berî ku shown.bs.collapse
bûyer çêbibe) vedigere bangkerê.
Hêmanek hilweşandî vedişêre. Berî ku hêmana hilavêtinê bi rastî were veşartin (ango berî ku hidden.bs.collapse
bûyer çêbibe) vedigere bangkerê.
Hilweşîna hêmanekê hilweşîne.
Dersa hilweşînê ya Bootstrap çend bûyeran ji bo girêdana fonksiyona hilweşînê eşkere dike.
Cureyê bûyerê | Terîf |
---|---|
nîşan bide.bs.hilweşîn | show Dema ku rêbaza nimûneyê tê gazî kirin ev bûyer tavilê dişewite. |
nîşan dan.bs.hilweşîn | Dema ku hêmanek hilweşandî ji bikarhêner re xuya bibe ev bûyer tê şewitandin (dê li bendê bimîne ku veguheztinên CSS temam bibin). |
veşartin.bs.hilweşîn | hide Dema ku rêbaz hate gazî kirin ev bûyer yekser tê şewitandin . |
veşartî.bs.hilweşîn | Dema ku hêmanek hilweşandî ji bikarhêner ve hatî veşartin ev bûyer tê şewitandin (dê li bendê bimîne ku veguheztinên CSS temam bibin). |