Navs и јазичиња
Документација и примери за тоа како да се користат вклучените компоненти за навигација на Bootstrap.
Основна навигација
Навигацијата достапна во Bootstrap споделува општо обележување и стилови, од основната .nav
класа до активните и оневозможените состојби. Заменете ги класите на модификаторите за да се префрлате помеѓу секој стил.
Основната .nav
компонента е изградена со flexbox и обезбедува силна основа за изградба на сите видови навигациски компоненти. Вклучува некои отфрлања на стилови (за работа со списоци), некои облоги за врски за поголеми погодени области и основен оневозможен стајлинг.
Основната .nav
компонента не вклучува никаква .active
состојба. Следниве примери ја вклучуваат класата, главно за да покажат дека оваа конкретна класа не предизвикува посебен стил.
За да ја пренесете активната состојба на помошните технологии, користете го aria-current
атрибутот — користејќи ја page
вредноста за тековната страница или true
за тековната ставка во множеството.
<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>
Часовите се користат насекаде, така што вашето обележување може да биде супер флексибилно. Користете <ul>
s како погоре, <ol>
ако редоследот на вашите ставки е важен, или превртете го вашиот со <nav>
елемент. Поради .nav
употребата display: flex
, врските за навигација се однесуваат исто како и ставките за навигација, но без дополнителна ознака.
<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>
Достапни стилови
Променете го стилот на .nav
компонентата со модификатори и алатки. Измешајте и спојте по потреба, или изградете свој.
Хоризонтално порамнување
Променете го хоризонталното порамнување на вашата навигација со помошните алатки на flexbox . Стандардно, навигација се лево порамнети, но можете лесно да ги промените во центар или десно.
Центрирано со .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>
Десно порамнето со .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>
Вертикално
Ставете ја вашата навигација со менување на насоката на флексибилни ставки со .flex-column
помошната алатка. Дали треба да ги ставите на некои пристаништа за гледање, но не и на други? Користете ги одговорните верзии (на пример, .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>
Како и секогаш, вертикалната навигација е можна и без <ul>
s.
<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>
Јазичиња
Ја зема основната навигација одозгора и ја додава .nav-tabs
класата за да генерира интерфејс со јазичиња. Користете ги за да креирате региони за јазичиња со нашиот приклучок JavaScript за јазичиња .
<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>
Апчиња
Земете го истиот HTML, но .nav-pills
наместо тоа користете:
<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>
Пополнете и оправдајте
Присилете ја .nav
содржината на вашата да ја прошири целосната достапна ширина една од двете класи на модификатори. За пропорционално да го пополните целиот расположлив простор со вашите .nav-item
s, користете .nav-fill
. Забележете дека целиот хоризонтален простор е зафатен, но не секоја ставка за навигација има иста ширина.
<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>
Кога користите <nav>
навигација заснована, можете безбедно да испуштите .nav-item
бидејќи .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>
За елементи со еднаква ширина, користете .nav-justified
. Целиот хоризонтален простор ќе биде окупиран од навигациските врски, но за разлика од .nav-fill
горенаведените, секоја ставка за навигација ќе биде со иста ширина.
<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>
Слично на .nav-fill
примерот со користење на <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>
Работа со флекс комунални услуги
Ако ви требаат респонзивни варијации на навигација, размислете за користење на низа комунални услуги на flexbox . Иако се пообемни, овие алатки нудат поголемо приспособување на точките на прекин. Во примерот подолу, нашата навигација ќе биде наредена на најниската точка на прекин, а потоа ќе се прилагоди на хоризонтален распоред што ја исполнува достапната ширина почнувајќи од малата точка на прекин.
<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>
Во однос на пристапноста
Ако користите навигација за да обезбедите лента за навигација, погрижете се да додадете a role="navigation"
во најлогичниот родителски контејнер на <ul>
, или да завиткате <nav>
елемент околу целата навигација. Не ја додавајте улогата на <ul>
самата, бидејќи тоа ќе спречи да биде објавена како вистинска листа од помошните технологии.
Забележете дека лентите за навигација, дури и ако визуелно се стилизирани како јазичиња со .nav-tabs
класата, не треба да се даваат role="tablist"
, role="tab"
или role="tabpanel"
атрибути. Овие се соодветни само за динамични интерфејси со јазичиња, како што е опишано во Практиките за авторизација на WAI ARIA . Видете го однесувањето на JavaScript за динамични интерфејси со јазичиња во овој дел за пример. Атрибутот aria-current
не е неопходен на динамичните интерфејси со јазичиња, бидејќи нашиот JavaScript се справува со избраната состојба со додавање aria-selected="true"
на активното јазиче.
Користење на паѓачки мени
Додадете паѓачки менија со малку дополнителен HTML и паѓачкиот приклучок JavaScript .
Јазичиња со паѓачки мени
<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>
Апчиња со капки
<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>
Сас
Променливи
$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
Користете го приклучокот за јазичиња JavaScript - вклучете го поединечно или преку компајлираната bootstrap.js
датотека - за да ги проширите нашите навигациски картички и апчиња за да креирате табли со локална содржина.
Динамичките интерфејси со јазичиња, како што е опишано во Практиките за авторизација на WAI ARIA , бараат role="tablist"
, role="tab"
, role="tabpanel"
и дополнителни aria-
атрибути со цел да се пренесат нивната структура, функционалност и моментална состојба на корисниците на помошни технологии (како што се читачите на екран). Како најдобра практика, препорачуваме да користите <button>
елементи за картичките, бидејќи тоа се контроли што предизвикуваат динамична промена, наместо врски што се движат до нова страница или локација.
Забележете дека динамичните интерфејси со јазичиња не треба да содржат паѓачки менија, бидејќи тоа предизвикува проблеми и со употребливоста и со пристапноста. Од гледна точка на употребливост, фактот што елементот за активирање на моментално прикажаниот таб не е веднаш видлив (бидејќи е внатре во затвореното паѓачко мени) може да предизвика конфузија. Од гледна точка на пристапност, во моментов не постои разумен начин да се мапира овој вид конструкција на стандардна шема на WAI ARIA, што значи дека не може лесно да се направи разбирлив за корисниците на помошните технологии.
Ова е одредена содржина на место за место, поврзана содржина на картичката Почетна страница. Со кликнување на друго јазиче ќе се смени видливоста на оваа за следната. Јазичето JavaScript ги заменува класите за да ја контролира видливоста и стилизирањето на содржината. Можете да го користите со јазичиња, апчиња и која било друга .nav
навигација со напојување.
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>
За да ви помогне да одговара на вашите потреби, ова функционира со <ul>
означување базирано, како што е прикажано погоре, или со било каква произволна ознака „направете своја сопствена“. Забележете дека ако користите <nav>
, не треба да додавате role="tablist"
директно на него, бидејќи тоа ќе ја отфрли основната улога на елементот како обележје за навигација. Наместо тоа, префрлете се на алтернативен елемент (во примерот подолу, едноставен <div>
) и завиткајте го <nav>
околу него.
<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>
Приклучокот за јазичиња исто така работи со апчиња.
Ова е одредена содржина на место за место, поврзана содржина на картичката Почетна страница. Со кликнување на друго јазиче ќе се смени видливоста на оваа за следната. Јазичето JavaScript ги заменува класите за да ја контролира видливоста и стилизирањето на содржината. Можете да го користите со јазичиња, апчиња и која било друга .nav
навигација со напојување.
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>
И со вертикални апчиња.
Ова е одредена содржина на место за место, поврзана содржина на картичката Почетна страница. Со кликнување на друго јазиче ќе се смени видливоста на оваа за следната. Јазичето JavaScript ги заменува класите за да ја контролира видливоста и стилизирањето на содржината. Можете да го користите со јазичиња, апчиња и која било друга .nav
навигација со напојување.
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>
Користење на атрибути на податоци
Можете да активирате навигација со јазиче или таблети без да пишувате JavaScript со едноставно назначување data-bs-toggle="tab"
или data-bs-toggle="pill"
на елемент. Користете ги овие атрибути на податоци на .nav-tabs
или .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
Овозможете јазичиња со јазичиња преку JavaScript (секоја картичка треба да се активира поединечно):
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()
})
})
Можете да активирате поединечни јазичиња на неколку начини:
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
Ефект на избледување
За да избледат картичките, додајте .fade
на секоја .tab-pane
. Првиот таб на јазичиња, исто така, мора .show
да ја направи видлива почетната содржина.
<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>
Методи
Асинхрони методи и транзиции
Сите API методи се асинхрони и започнуваат транзиција . Тие се враќаат кај повикувачот штом ќе започне транзицијата, но пред да заврши . Дополнително, повик на метод на компонента во транзиција ќе се игнорира .
Погледнете ја нашата JavaScript документација за повеќе информации .
constructor
Активира елемент на картичката и контејнер за содржина. Јазичето треба да има или data-bs-target
или, ако користите врска, href
атрибут, таргетирање контејнерски јазол во DOM.
<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>
покажуваат
Го избира даденото јазиче и го прикажува неговото поврзано окно. Секое друго претходно избрано јазиче станува неизбрано и поврзаното окно е скриено. Се враќа кај повикувачот пред да се прикаже окното со јазичиња (т.е. пред да се shown.bs.tab
случи настанот).
var someTabTriggerEl = document.querySelector('#someTabTrigger')
var tab = new bootstrap.Tab(someTabTriggerEl)
tab.show()
располага
Уништува јазичето на елементот.
getInstance
Статички метод кој ви овозможува да го добиете примерот на јазичето поврзан со елементот DOM
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance
getOrCreateInstance
Статичен метод кој ви овозможува да го добиете примерот на јазичето поврзан со елемент DOM или да создадете нов во случај да не е иницијализиран
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getOrCreateInstance(triggerEl) // Returns a Bootstrap tab instance
Настани
Кога се прикажува нова картичка, настаните се активираат по следниот редослед:
hide.bs.tab
(на тековното активно јазиче)show.bs.tab
(на картичката што треба да се прикаже)hidden.bs.tab
(на претходната активна картичка, истата како и заhide.bs.tab
настанот)shown.bs.tab
(на ново-активното штотуку прикажано јазиче, исто како и заshow.bs.tab
настанот)
Ако ниту една картичка веќе не била активна, тогаш настаните hide.bs.tab
и нема да се активираат.hidden.bs.tab
Тип на настан | Опис |
---|---|
show.bs.tab |
Овој настан се вклучува на прикажување на јазичиња, но пред да се прикаже новата картичка. Користете event.target и event.relatedTarget за да го насочите активното јазиче и претходното активно јазиче (ако е достапно), соодветно. |
shown.bs.tab |
Овој настан се вклучува на прикажување на јазичиња откако ќе се прикаже картичка. Користете event.target и event.relatedTarget за да го насочите активното јазиче и претходното активно јазиче (ако е достапно), соодветно. |
hide.bs.tab |
Овој настан се вклучува кога треба да се прикаже ново јазиче (а со тоа и претходното активно јазиче треба да се скрие). Користете event.target и event.relatedTarget за да го насочите тековниот активен таб и новата картичка што наскоро ќе биде активна, соодветно. |
hidden.bs.tab |
Овој настан се вклучува откако ќе се прикаже нов таб (а со тоа и претходното активно јазиче е скриено). Користете event.target и event.relatedTarget за насочување на претходното активно и новото активно јазиче, соодветно. |
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
})