Nabigazioak eta fitxak
Bootstrap-en barne nabigazio osagaiak erabiltzeko dokumentazioa eta adibideak.
Oinarrizko nabigazioa
Bootstrap-en eskuragarri dagoen nabigazioak marka eta estilo orokorrak partekatzen ditu, oinarrizko .nav
klasetik egoera aktibo eta desgaituetaraino. Trukatu modifikatzaile klaseak estilo bakoitzaren artean aldatzeko.
Oinarrizko .nav
osagaia flexbox-ekin eraikita dago eta nabigazio-osagai mota guztiak eraikitzeko oinarri sendoa eskaintzen du. Estiloaren gainidazketa batzuk (zerrendekin lan egiteko), estekaren betegarri batzuk hit eremu handiagoetarako eta oinarrizko desgaitutako estiloa biltzen ditu.
Oinarrizko .nav
osagaiak ez du inolako .active
egoerarik barne hartzen. Ondorengo adibideek klasea barne hartzen dute, batez ere klase jakin honek ez duela estilo berezirik eragiten erakusteko.
Egoera aktiboa laguntza-teknologiei helarazteko, erabili aria-current
atributua — page
uneko orriaren balioa edo true
multzo bateko uneko elementua erabiliz.
<ul class="nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Klaseak zehar erabiltzen dira, beraz, zure markaketa oso malgua izan daiteke. Erabili <ul>
goiko bezalakoak, <ol>
zure elementuen ordena garrantzitsua bada, edo jaurti zurea <nav>
elementu batekin. .nav
Erabiltzen direnez, display: flex
nabigazio estekek nabigazio-elementuek bezala jokatzen dute, baina marka gehigarririk gabe.
<nav class="nav">
<a class="nav-link active" aria-current="page" href="#">Active</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled">Disabled</a>
</nav>
Eskuragarri dauden estiloak
Aldatu .nav
s osagaiaren estiloa aldatzaile eta utilitateekin. Nahastu eta lotu behar duzun moduan, edo eraiki zeurea.
Lerrokadura horizontala
Aldatu zure nabigazioaren lerrokadura horizontala flexbox utilitateekin . Lehenespenez, nabigazioak ezkerrean lerrokatuta daude, baina erraz alda ditzakezu erdialdera edo eskuinera lerrokatuta.
Zentratua .justify-content-center
:
<ul class="nav justify-content-center">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Eskuinean lerrokatuta .justify-content-end
:
<ul class="nav justify-content-end">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Bertikala
Pilatu zure nabigazioa erabilgarritasunarekin elementu malguaren norabidea aldatuz .flex-column
. Ikuspegi batzuetan pilatu behar dituzu baina beste batzuetan ez? Erabili erantzuteko bertsioak (adibidez, .flex-sm-column
).
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Beti bezala, nabigazio bertikala posible da <ul>
s gabe ere.
<nav class="nav flex-column">
<a class="nav-link active" aria-current="page" href="#">Active</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled">Disabled</a>
</nav>
Fitxak
Goiko oinarrizko nabigazioa hartzen du eta .nav-tabs
klasea gehitzen du fitxadun interfaze bat sortzeko. Erabili itzazu tabulagarriak diren eskualdeak sortzeko gure fitxa JavaScript pluginarekin .
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Pilulak
Hartu HTML bera, baina erabili .nav-pills
horren ordez:
<ul class="nav nav-pills">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Bete eta justifikatu
Behartu zure .nav
edukia erabilgarri dagoen zabalera osoa bi aldatzaile klaseetako bat zabaltzera. Eskuragarri dagoen espazio guztia proportzioan betetzeko .nav-item
, erabili .nav-fill
. Kontuan izan espazio horizontal guztia okupatuta dagoela, baina nabigazio-elementu guztiek ez dutela zabalera bera.
<ul class="nav nav-pills nav-fill">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Much longer nav link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
-Oinarritutako nabigazioa erabiltzen duzunean <nav>
, modu seguruan ezaba dezakezu estilo- elementuetarako .nav-item
soilik beharrezkoa den bezala ..nav-link
<a>
<nav class="nav nav-pills nav-fill">
<a class="nav-link active" aria-current="page" href="#">Active</a>
<a class="nav-link" href="#">Much longer nav link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled">Disabled</a>
</nav>
Zabalera berdineko elementuetarako, erabili .nav-justified
. Espazio horizontal guztia nabigazio estekek okupatuko dute, baina goikoak ez bezala, .nav-fill
nabigazio-elementu guztiek zabalera berdina izango dute.
<ul class="nav nav-pills nav-justified">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Much longer nav link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
-Oinarritutako nabigazioa .nav-fill
erabiliz adibidearen antzekoa .<nav>
<nav class="nav nav-pills nav-justified">
<a class="nav-link active" aria-current="page" href="#">Active</a>
<a class="nav-link" href="#">Much longer nav link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled">Disabled</a>
</nav>
Flex utilityekin lan egitea
Nabigazio aldaerak behar badituzu, kontuan hartu flexbox erabilgarritasun batzuk erabiltzea . Hitzezkoagoak diren arren, utilitate hauek pertsonalizazio handiagoa eskaintzen dute eten-puntu erantzutekotan. Beheko adibidean, gure nabigazioa eten-puntu baxuenean pilatuko da, gero eten-puntu txikitik hasita erabilgarri dagoen zabalera betetzen duen diseinu horizontal batera egokituko da.
<nav class="nav nav-pills flex-column flex-sm-row">
<a class="flex-sm-fill text-sm-center nav-link active" aria-current="page" href="#">Active</a>
<a class="flex-sm-fill text-sm-center nav-link" href="#">Longer nav link</a>
<a class="flex-sm-fill text-sm-center nav-link" href="#">Link</a>
<a class="flex-sm-fill text-sm-center nav-link disabled">Disabled</a>
</nav>
Irisgarritasunari dagokionez
Nabigazio-barra bat emateko nabigazio-barra erabiltzen ari bazara, ziurtatu a gehitzen duzula role="navigation"
gailuaren guraso-edukiontzirik logikoenean <ul>
, edo <nav>
nabigazio osoan elementu bat bildu. Ez gehitu rola <ul>
berari, honek laguntza-teknologiek benetako zerrenda gisa iragartzea eragotziko lukeelako.
Kontuan izan nabigazio-barrak, nahiz eta ikusmen-estiloa .nav-tabs
klasearekin fitxak izan, ez direla eman behar role="tablist"
, role="tab"
edo role="tabpanel"
atributuak. Fitxa-interfaze dinamikoetarako soilik egokiak dira, WAI ARIA egile-praktiketan azaltzen den bezala . Ikusi JavaScript portaera fitxa-interfaze dinamikoetarako atal honetan adibide bat lortzeko. Atributua ez da beharrezkoa fitxa dinamikoko interfazeetan , aria-current
gure JavaScriptek hautatutako egoera kudeatzen baitu aria-selected="true"
fitxa aktiboan gehituz.
Goitibehurrak erabiliz
Gehitu goitibeherako menuak HTML gehigarri batekin eta goitibeherako JavaScript pluginarekin .
Goitibeherako fitxak
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#">Separated link</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Goitibeherako pilulak
<ul class="nav nav-pills">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Active</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#">Separated link</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
Sass
Aldagaiak
$nav-link-padding-y: .5rem;
$nav-link-padding-x: 1rem;
$nav-link-font-size: null;
$nav-link-font-weight: null;
$nav-link-color: $link-color;
$nav-link-hover-color: $link-hover-color;
$nav-link-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
$nav-link-disabled-color: $gray-600;
$nav-tabs-border-color: $gray-300;
$nav-tabs-border-width: $border-width;
$nav-tabs-border-radius: $border-radius;
$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color;
$nav-tabs-link-active-color: $gray-700;
$nav-tabs-link-active-bg: $body-bg;
$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg;
$nav-pills-border-radius: $border-radius;
$nav-pills-link-active-color: $component-active-color;
$nav-pills-link-active-bg: $component-active-bg;
JavaScript portaera
Erabili fitxa JavaScript plugina —sartu banan-banan edo konpilatutako bootstrap.js
fitxategiaren bidez— gure nabigazio-fitxak eta pilulak zabaltzeko tokiko edukiaren fitxa-panelak sortzeko.
Fitxa-interfaze dinamikoek, WAI ARIA Egile Praktiketanrole="tablist"
azaltzen den bezala, , role="tab"
, role="tabpanel"
, eta atributu osagarriak behar aria-
dituzte haien egitura, funtzionaltasuna eta egungo egoera helarazteko teknologia laguntzaileen erabiltzaileei (pantaila-irakurgailuak, esaterako). Praktika <button>
egoki gisa, fitxetarako elementuak erabiltzea gomendatzen dugu, aldaketa dinamikoa eragiten duten kontrolak baitira, orrialde edo kokapen berri batera nabigatzen duten estekak baino.
Kontuan izan fitxa-interfaze dinamikoek ez dutela goitibeherako menurik eduki behar, horrek erabilgarritasun eta irisgarritasun arazoak eragiten baititu. Erabilgarritasunaren ikuspegitik, unean bistaratzen den fitxaren abiarazlearen elementua berehala ikusten ez izateak (gotibeherako menu itxiaren barruan baitago) nahasmena sor dezake. Irisgarritasunaren ikuspuntutik, gaur egun ez dago eraikuntza mota hau WAI ARIA eredu estandar batekin mapatzeko modu zentzudunik, hau da, ezin da erraz uler daiteke laguntza-teknologien erabiltzaileentzat.
Hau hasierako fitxan lotutako edukia da. Beste fitxa batean klik eginez gero, honen ikusgarritasuna aldatuko da hurrengorako. JavaScript fitxak klaseak trukatzen ditu edukiaren ikusgarritasuna eta estiloa kontrolatzeko. .nav
Fitxekin, pilulekin eta beste edozein nabigaziorekin erabil dezakezu .
This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact" type="button" role="tab" aria-controls="contact" aria-selected="false">Contact</button>
</li>
</ul>
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">...</div>
</div>
Zure beharretara egokitzen laguntzeko, honek <ul>
-oinarritutako markaketarekin funtzionatzen du, goian erakusten den moduan, edo edozein "erretira ezazu zure" marka arbitrarioarekin. Kontuan izan , erabiltzen ari bazara <nav>
, ez duzula zuzenean gehitu behar role="tablist"
, horrek elementuak nabigazio-mugarri gisa duen jatorrizko eginkizuna gainidatziko lukeelako. Horren ordez, aldatu elementu alternatibo batera (beheko adibidean, soil bat <div>
) eta bildu haren <nav>
inguruan.
<nav>
<div class="nav nav-tabs" id="nav-tab" role="tablist">
<button class="nav-link active" id="nav-home-tab" data-bs-toggle="tab" data-bs-target="#nav-home" type="button" role="tab" aria-controls="nav-home" aria-selected="true">Home</button>
<button class="nav-link" id="nav-profile-tab" data-bs-toggle="tab" data-bs-target="#nav-profile" type="button" role="tab" aria-controls="nav-profile" aria-selected="false">Profile</button>
<button class="nav-link" id="nav-contact-tab" data-bs-toggle="tab" data-bs-target="#nav-contact" type="button" role="tab" aria-controls="nav-contact" aria-selected="false">Contact</button>
</div>
</nav>
<div class="tab-content" id="nav-tabContent">
<div class="tab-pane fade show active" id="nav-home" role="tabpanel" aria-labelledby="nav-home-tab">...</div>
<div class="tab-pane fade" id="nav-profile" role="tabpanel" aria-labelledby="nav-profile-tab">...</div>
<div class="tab-pane fade" id="nav-contact" role="tabpanel" aria-labelledby="nav-contact-tab">...</div>
</div>
Tabs pluginak pilulekin ere funtzionatzen du.
Hau hasierako fitxan lotutako edukia da. Beste fitxa batean klik eginez gero, honen ikusgarritasuna aldatuko da hurrengorako. JavaScript fitxak klaseak trukatzen ditu edukiaren ikusgarritasuna eta estiloa kontrolatzeko. .nav
Fitxekin, pilulekin eta beste edozein nabigaziorekin erabil dezakezu .
This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
<ul class="nav nav-pills mb-3" id="pills-tab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="pills-home-tab" data-bs-toggle="pill" data-bs-target="#pills-home" type="button" role="tab" aria-controls="pills-home" aria-selected="true">Home</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="pills-profile-tab" data-bs-toggle="pill" data-bs-target="#pills-profile" type="button" role="tab" aria-controls="pills-profile" aria-selected="false">Profile</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="pills-contact-tab" data-bs-toggle="pill" data-bs-target="#pills-contact" type="button" role="tab" aria-controls="pills-contact" aria-selected="false">Contact</button>
</li>
</ul>
<div class="tab-content" id="pills-tabContent">
<div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab">...</div>
<div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab">...</div>
<div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab">...</div>
</div>
Eta pilula bertikalekin.
Hau hasierako fitxan lotutako edukia da. Beste fitxa batean klik eginez gero, honen ikusgarritasuna aldatuko da hurrengorako. JavaScript fitxak klaseak trukatzen ditu edukiaren ikusgarritasuna eta estiloa kontrolatzeko. .nav
Fitxekin, pilulekin eta beste edozein nabigaziorekin erabil dezakezu .
This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
This is some placeholder content the Messages tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
This is some placeholder content the Settings tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav
-powered navigation.
<div class="d-flex align-items-start">
<div class="nav flex-column nav-pills me-3" id="v-pills-tab" role="tablist" aria-orientation="vertical">
<button class="nav-link active" id="v-pills-home-tab" data-bs-toggle="pill" data-bs-target="#v-pills-home" type="button" role="tab" aria-controls="v-pills-home" aria-selected="true">Home</button>
<button class="nav-link" id="v-pills-profile-tab" data-bs-toggle="pill" data-bs-target="#v-pills-profile" type="button" role="tab" aria-controls="v-pills-profile" aria-selected="false">Profile</button>
<button class="nav-link" id="v-pills-messages-tab" data-bs-toggle="pill" data-bs-target="#v-pills-messages" type="button" role="tab" aria-controls="v-pills-messages" aria-selected="false">Messages</button>
<button class="nav-link" id="v-pills-settings-tab" data-bs-toggle="pill" data-bs-target="#v-pills-settings" type="button" role="tab" aria-controls="v-pills-settings" aria-selected="false">Settings</button>
</div>
<div class="tab-content" id="v-pills-tabContent">
<div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab">...</div>
<div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab">...</div>
<div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab">...</div>
<div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab">...</div>
</div>
</div>
Datu-atributuak erabiltzea
Fitxa edo pilulen nabigazioa aktiba dezakezu JavaScript idatzi gabe data-bs-toggle="tab"
edo data-bs-toggle="pill"
elementu batean zehaztuta. Erabili datu-atributu hauek .nav-tabs
edo .nav-pills
.
<!-- Nav tabs -->
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="messages-tab" data-bs-toggle="tab" data-bs-target="#messages" type="button" role="tab" aria-controls="messages" aria-selected="false">Messages</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="settings-tab" data-bs-toggle="tab" data-bs-target="#settings" type="button" role="tab" aria-controls="settings" aria-selected="false">Settings</button>
</li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
JavaScript bidez
Gaitu tabulatzeko fitxak JavaScript bidez (fitxa bakoitza banan-banan aktibatu behar da):
var triggerTabList = [].slice.call(document.querySelectorAll('#myTab button'))
triggerTabList.forEach(function (triggerEl) {
var tabTrigger = new bootstrap.Tab(triggerEl)
triggerEl.addEventListener('click', function (event) {
event.preventDefault()
tabTrigger.show()
})
})
Banakako fitxak hainbat modutara aktibatu ditzakezu:
var triggerEl = document.querySelector('#myTab button[data-bs-target="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name
var triggerFirstTabEl = document.querySelector('#myTab li:first-child button')
bootstrap.Tab.getInstance(triggerFirstTabEl).show() // Select first tab
Desagertzeko efektua
Fitxak desagertzeko, gehitu .fade
bakoitzari .tab-pane
. Lehen fitxa-panelak .show
hasierako edukia ikusgai jarri behar du.
<div class="tab-content">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane fade" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
Metodoak
Metodo asinkronoak eta trantsizioak
API metodo guztiak asinkronoak dira eta trantsizio bat hasten dute . Trantsizioa hasi bezain laster baina amaitu baino lehen itzultzen dira deitzailearengana . Gainera, trantsizio-osagai baten metodo-dei bati ez ikusi egingo zaio .
Ikus gure JavaScript dokumentazioa informazio gehiago lortzeko .
constructor
Fitxa-elementu eta eduki-edukiontzi bat aktibatzen du. Fitxak atributu bat izan beharko luke data-bs-target
edo, esteka bat erabiltzen baduzu, href
DOM-eko edukiontzi-nodo batera zuzenduta.
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="messages-tab" data-bs-toggle="tab" data-bs-target="#messages" type="button" role="tab" aria-controls="messages" aria-selected="false">Messages</button>
</li>
<li class="nav-item" role="presentation">
<button class="nav-link" id="settings-tab" data-bs-toggle="tab" data-bs-target="#settings" type="button" role="tab" aria-controls="settings" aria-selected="false">Settings</button>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
<script>
var firstTabEl = document.querySelector('#myTab li:last-child button')
var firstTab = new bootstrap.Tab(firstTabEl)
firstTab.show()
</script>
erakutsi
Emandako fitxa hautatzen du eta hari lotutako panela erakusten du. Aurretik hautatutako beste edozein fitxa hautatu gabe geratzen da eta hari lotutako panela ezkutatu egiten da. Deitzen duenari itzultzen zaio fitxa-panela benetan erakutsi aurretik (hau da, shown.bs.tab
gertaera gertatu baino lehen).
var someTabTriggerEl = document.querySelector('#someTabTrigger')
var tab = new bootstrap.Tab(someTabTriggerEl)
tab.show()
bota
Elementu baten fitxa suntsitzen du.
getInstance
Metodo estatikoa DOM elementu batekin lotutako fitxa-instantzia lortzeko aukera ematen duena
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance
getOrCreateInstance
Metodo estatikoa , DOM elementu batekin lotutako fitxa-instantzia lortzeko edo berri bat sortzeko aukera ematen duena, hasieratu ez bazen.
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getOrCreateInstance(triggerEl) // Returns a Bootstrap tab instance
Gertaerak
Fitxa berri bat erakustean, gertaerak ordena honetan piztuko dira:
hide.bs.tab
(uneko fitxa aktiboan)show.bs.tab
(Erakutsi beharreko fitxan)hidden.bs.tab
(aurreko fitxa aktiboan, ekitaldiaren berdinahide.bs.tab
)shown.bs.tab
(Aktibatu berri den fitxan, ekitaldiaren berdinashow.bs.tab
)
Fitxarik ez bazegoen aktibo, orduan hide.bs.tab
eta hidden.bs.tab
gertaerak ez dira abiaraziko.
Gertaera mota | Deskribapena |
---|---|
show.bs.tab |
Gertaera hau fitxen erakustaldian abiarazten da, baina fitxa berria erakutsi aurretik. Erabili event.target eta event.relatedTarget fitxa aktibora eta aurreko fitxa aktibora bideratzeko (eskuragarri badago), hurrenez hurren. |
shown.bs.tab |
Gertaera hau fitxen erakustaldian abiarazten da fitxa bat erakutsi ondoren. Erabili event.target eta event.relatedTarget fitxa aktibora eta aurreko fitxa aktibora bideratzeko (eskuragarri badago), hurrenez hurren. |
hide.bs.tab |
Gertaera hau fitxa berri bat erakutsi nahi denean abiarazten da (eta, beraz, aurreko fitxa aktiboa ezkutatu behar da). Erabili event.target eta event.relatedTarget uneko fitxa aktibora eta laster aktibo egongo den fitxa berria bideratzeko, hurrenez hurren. |
hidden.bs.tab |
Gertaera hau fitxa berri bat erakutsi ondoren abiarazten da (eta, beraz, aurreko fitxa aktiboa ezkutatu egiten da). Erabili event.target eta event.relatedTarget aurreko fitxa aktibora eta fitxa aktibo berria bideratzeko, hurrenez hurren. |
var tabEl = document.querySelector('button[data-bs-toggle="tab"]')
tabEl.addEventListener('shown.bs.tab', function (event) {
event.target // newly activated tab
event.relatedTarget // previous active tab
})