Bootstrap Llist group (группы списков)
Базовый пример
Самая базовая группа списков - это неупорядоченный список с элементами списка и соответствующими классами. Создайте на его основе следующие параметры или, при необходимости, свой собственный CSS.
<ul class="list-group">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
<li class="list-group-item">Четвертый элемент</li>
<li class="list-group-item">И пятый</li>
</ul>
- Элемент
- Второй элемент
- Третий элемент
- Четвертый элемент
- И пятый
Активные элементы
Добавить класс .active
в .list-group-item
для указания текущего активного элемента.
<ul class="list-group">
<li class="list-group-item active" aria-current="true">Активный элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
<li class="list-group-item">Четвертый элемент</li>
<li class="list-group-item">И пятый</li>
</ul>
- Активный элемент
- Второй элемент
- Третий элемент
- Четвертый элемент
- И пятый
Отключенные элементы
Добавьте класс .disabled
в .list-group-item
, чтобы она выглядела отключенной. Обратите внимание, что для некоторых элементов с .disabled
также потребуется пользовательский JavaScript для полного отключения их событий перехода (например, ссылок).
<ul class="list-group">
<li class="list-group-item disabled" aria-disabled="true">Отключенный элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
<li class="list-group-item">Четвертый элемент</li>
<li class="list-group-item">И пятый</li>
</ul>
- Отключенный элемент
- Второй элемент
- Третий элемент
- Четвертый элемент
- И пятый
Ссылки и кнопки
Используйте <a>
или <button>
для создания активных элементов группы списков с состояниями наведения, отключено и активно путем добавления .list-group-item-action
. Мы разделяем эти псевдоклассы, чтобы гарантировать, что группы списков, состоящие из неинтерактивных элементов (таких как <li>
или <div>
), не предоставляют возможности щелчка мышью.
Убедитесь, что не используйте здесь стандартные .btn
классы.
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">
Текущий элемент ссылки
</a>
<a href="#" class="list-group-item list-group-item-action">Второй элемент ссылки</a>
<a href="#" class="list-group-item list-group-item-action">Третий элемент ссылки</a>
<a href="#" class="list-group-item list-group-item-action">Четвертый элемент ссылки</a>
<a class="list-group-item list-group-item-action disabled" aria-disabled="true">Отключенный элемент ссылки</a>
</div>
С <button>
s вы также можете использовать disabled
атрибут вместо .disabled
класса. К сожалению, <a>
s не поддерживают отключенный атрибут.
<div class="list-group">
<button type="button" class="list-group-item list-group-item-action active" aria-current="true">
Текущая кнопка
</button>
<button type="button" class="list-group-item list-group-item-action">Второй элемент кнопки</button>
<button type="button" class="list-group-item list-group-item-action">Третий элемент кнопки</button>
<button type="button" class="list-group-item list-group-item-action">Четвертый элемент кнопки</button>
<button type="button" class="list-group-item list-group-item-action" disabled>Отключенный элемент кнопки</button>
</div>
Промывка
Добавить .list-group-flush
для удаления некоторых границ и закругленных углов для отображения элементов группы списков от края до края в родительском контейнере (например, карточек).
<ul class="list-group list-group-flush">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
<li class="list-group-item">Четвертый элемент</li>
<li class="list-group-item">И пятый</li>
</ul>
- Элемент
- Второй элемент
- Третий элемент
- Четвертый элемент
- И пятый
Пронумерованный
Добавьте .list-group-numbered
класс-модификатор (и, при необходимости, используйте <ol>
элемент), чтобы выбирать элементы группы нумерованных списков. Числа генерируются с помощью CSS (в отличие от <ol>
стиля браузера по умолчанию) для лучшего размещения внутри элементов группы списков и обеспечения лучшей настройки.
Числа генерируются с помощью counter-reset
на <ol>
, а затем оформляются и помещаются с помощью ::before
псевдоэлемента на <li>
с counter-increment
и content
.
<ol class="list-group list-group-numbered">
<li class="list-group-item">Элемент списка</li>
<li class="list-group-item">Элемент списка</li>
<li class="list-group-item">Элемент списка</li>
</ol>
- Элемент списка
- Элемент списка
- Элемент списка
Они также отлично работают с пользовательским контентом.
<ol class="list-group list-group-numbered">
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Подзаголовок</div>
Содержимое элемента списка
</div>
<span class="badge text-bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Подзаголовок</div>
Содержимое элемента списка
</div>
<span class="badge text-bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Подзаголовок</div>
Содержимое элемента списка
</div>
<span class="badge text-bg-primary rounded-pill">14</span>
</li>
</ol>
-
ПодзаголовокСодержимое элемента списка
-
ПодзаголовокСодержимое элемента списка
-
ПодзаголовокСодержимое элемента списка
Горизонтальный
Добавить .list-group-horizontal
для изменения расположения элементов группы списков с вертикального на горизонтальное во всех точках останова. В качестве альтернативы, выберите адаптивный вариант, .list-group-horizontal-{sm|md|lg|xl|xxl}
чтобы сделать группу списков горизонтальной, начиная с этой точки останова min-width
. В настоящее время группы списков по горизонтали нельзя комбинировать с группами сплошных списков.
Подсказка: Требуется группировать элементы списка одинаковой ширины по горизонтали? Добавьте .flex-fill
к каждому элементу группы списков.
<ul class="list-group list-group-horizontal">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
<ul class="list-group list-group-horizontal-sm">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
<ul class="list-group list-group-horizontal-md">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
<ul class="list-group list-group-horizontal-lg">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
<ul class="list-group list-group-horizontal-xl">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
<ul class="list-group list-group-horizontal-xxl">
<li class="list-group-item">Элемент</li>
<li class="list-group-item">Второй элемент</li>
<li class="list-group-item">Третий элемент</li>
</ul>
- Элемент
- Второй элемент
- Третий элемент
- Элемент
- Второй элемент
- Третий элемент
- Элемент
- Второй элемент
- Третий элемент
- Элемент
- Второй элемент
- Третий элемент
- Элемент
- Второй элемент
- Третий элемент
- Элемент
- Второй элемент
- Третий элемент
Варианты
list-group-item-variant()
микширование Sass устарело. Варианты элементов группы списков теперь переопределяют свои CSS-переменные в цикле Sass.Используйте контекстные классы для оформления элементов списка фоном и цветом с учетом состояния.
<ul class="list-group">
<li class="list-group-item">Простой элемент группы списков по умолчанию</li>
<li class="list-group-item list-group-item-primary">Простой элемент основной группы списков</li>
<li class="list-group-item list-group-item-secondary">Простой элемент дополнительной группы списков</li>
<li class="list-group-item list-group-item-success">Простой элемент группы списка успешных действий</li>
<li class="list-group-item list-group-item-danger">Простой элемент группы списков опасностей</li>
<li class="list-group-item list-group-item-warning">Простой элемент группы списков предупреждений</li>
<li class="list-group-item list-group-item-info">Простой элемент группы информационных списков</li>
<li class="list-group-item list-group-item-light">Простой элемент группы облегченных списков</li>
<li class="list-group-item list-group-item-dark">Простой элемент группы темных списков</li>
</ul>
- Простой элемент группы списков по умолчанию
- Простой элемент основной группы списков
- Простой элемент дополнительной группы списков
- Простой элемент группы списка успешных действий
- Простой элемент группы списков опасностей
- Простой элемент группы списков предупреждений
- Простой элемент группы информационных списков
- Простой элемент группы облегченных списков
- Простой элемент группы темных списков
Для ссылок и кнопок
Контекстные классы также работают с элементами .list-group-item-action
for <a>
и <button>
. Обратите внимание на добавление стилей наведения, отсутствующих в предыдущем примере. Также поддерживается состояние .active
; примените его для указания активного выбора элемента контекстной группы списков.
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action">Простой элемент группы списков по умолчанию</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-primary">Простой элемент основной группы списков</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-secondary">Простой элемент дополнительной группы списков</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-success">Простой элемент группы списка успешных действий</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-danger">Простой элемент группы списков опасностей</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-warning">Простой элемент группы списков предупреждений</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-info">Простой элемент группы информационных списков</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-light">Простой элемент группы облегченных списков</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-dark">Простой элемент группы темных списков</a>
</div>
.visually-hidden
.Со значками
Добавьте значки к любому элементу группы списков, чтобы показывать количество непрочитанных, активность и многое другое с помощью некоторых утилит.
<ul class="list-group">
<li class="list-group-item d-flex justify-content-between align-items-center">
Элемент списка
<span class="badge text-bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
Второй элемент списка
<span class="badge text-bg-primary rounded-pill">2</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
Третий элемент списка
<span class="badge text-bg-primary rounded-pill">1</span>
</li>
</ul>
- Элемент списка 14
- Второй элемент списка 2
- Третий элемент списка 1
Пользовательский контент
Добавьте в нее практически любой HTML-код, даже для связанных групп списков, подобных приведенной ниже, с помощью утилит flexbox.
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">Заголовок элемента группы списков</h5>
<small>2 дня назад</small>
</div>
<p class="mb-1">Некоторое содержимое-заполнитель в абзаце.</p>
<small>И немного мелкого шрифта.</small>
</a>
<a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">List group item heading</h5>
<small class="text-body-secondary">3 дня назад</small>
</div>
<p class="mb-1">Некоторое содержимое-заполнитель в абзаце.</p>
<small class="text-body-secondary">И немного мелкого шрифта.</small>
</a>
<a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">List group item heading</h5>
<small class="text-body-secondary">4 дня назад</small>
</div>
<p class="mb-1">Некоторое содержимое-заполнитель в абзаце.</p>
<small class="text-body-secondary">И немного мелкого шрифта.</small>
</a>
</div>
Заголовок элемента группы списков
2 дня назадНекоторое содержимое-заполнитель в абзаце.
И немного мелкого шрифта.List group item heading
3 дня назадНекоторое содержимое-заполнитель в абзаце.
И немного мелкого шрифта.List group item heading
4 дня назадНекоторое содержимое-заполнитель в абзаце.
И немного мелкого шрифта.Флажки и радиоприемники
Установите флажки и радиоприемники Bootstrap в элементах группы списков и настройте по мере необходимости. Вы можете использовать их без <label>
, но, пожалуйста, не забудьте включить атрибут aria-label
и значение для обеспечения доступности.
<ul class="list-group">
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="firstCheckbox">
<label class="form-check-label" for="firstCheckbox">Первый флажок</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="secondCheckbox">
<label class="form-check-label" for="secondCheckbox">Второй флажок</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="thirdCheckbox">
<label class="form-check-label" for="thirdCheckbox">Третий флажок</label>
</li>
</ul>
<ul class="list-group">
<li class="list-group-item">
<input class="form-check-input me-1" type="radio" name="listGroupRadio" value="" id="firstRadio" checked>
<label class="form-check-label" for="firstRadio">Первое радио</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="radio" name="listGroupRadio" value="" id="secondRadio">
<label class="form-check-label" for="secondRadio">Второе радио</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="radio" name="listGroupRadio" value="" id="thirdRadio">
<label class="form-check-label" for="thirdRadio">Третье радио</label>
</li>
</ul>
Вы можете использовать .stretched-link
с <label>
, чтобы сделать весь элемент группы списков интерактивным.
<ul class="list-group">
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="firstCheckboxStretched">
<label class="form-check-label stretched-link" for="firstCheckboxStretched">Первый флажок</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="secondCheckboxStretched">
<label class="form-check-label stretched-link" for="secondCheckboxStretched">Второй флажок</label>
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" id="thirdCheckboxStretched">
<label class="form-check-label stretched-link" for="thirdCheckboxStretched">Третий флажок</label>
</li>
</ul>
CSS
Переменные
Добавлено в версии 5.2.0
В рамках развивающегося подхода Bootstrap к CSS-переменным, группы списков теперь используют локальные CSS-переменные на .list-group
для расширенной настройки в режиме реального времени. Значения для переменных CSS устанавливаются через Sass, поэтому настройка Sass также по-прежнему поддерживается.
--#{$prefix}list-group-color: #{$list-group-color};
--#{$prefix}list-group-bg: #{$list-group-bg};
--#{$prefix}list-group-border-color: #{$list-group-border-color};
--#{$prefix}list-group-border-width: #{$list-group-border-width};
--#{$prefix}list-group-border-radius: #{$list-group-border-radius};
--#{$prefix}list-group-item-padding-x: #{$list-group-item-padding-x};
--#{$prefix}list-group-item-padding-y: #{$list-group-item-padding-y};
--#{$prefix}list-group-action-color: #{$list-group-action-color};
--#{$prefix}list-group-action-hover-color: #{$list-group-action-hover-color};
--#{$prefix}list-group-action-hover-bg: #{$list-group-hover-bg};
--#{$prefix}list-group-action-active-color: #{$list-group-action-active-color};
--#{$prefix}list-group-action-active-bg: #{$list-group-action-active-bg};
--#{$prefix}list-group-disabled-color: #{$list-group-disabled-color};
--#{$prefix}list-group-disabled-bg: #{$list-group-disabled-bg};
--#{$prefix}list-group-active-color: #{$list-group-active-color};
--#{$prefix}list-group-active-bg: #{$list-group-active-bg};
--#{$prefix}list-group-active-border-color: #{$list-group-active-border-color};
Переменные Sass
$list-group-color: var(--#{$prefix}body-color);
$list-group-bg: var(--#{$prefix}body-bg);
$list-group-border-color: var(--#{$prefix}border-color);
$list-group-border-width: var(--#{$prefix}border-width);
$list-group-border-radius: var(--#{$prefix}border-radius);
$list-group-item-padding-y: $spacer * .5;
$list-group-item-padding-x: $spacer;
// fusv-disable
$list-group-item-bg-scale: -80%; // Deprecated in v5.3.0
$list-group-item-color-scale: 40%; // Deprecated in v5.3.0
// fusv-enable
$list-group-hover-bg: var(--#{$prefix}tertiary-bg);
$list-group-active-color: $component-active-color;
$list-group-active-bg: $component-active-bg;
$list-group-active-border-color: $list-group-active-bg;
$list-group-disabled-color: var(--#{$prefix}secondary-color);
$list-group-disabled-bg: $list-group-bg;
$list-group-action-color: var(--#{$prefix}secondary-color);
$list-group-action-hover-color: var(--#{$prefix}emphasis-color);
$list-group-action-active-color: var(--#{$prefix}body-color);
$list-group-action-active-bg: var(--#{$prefix}secondary-bg);
Смешивания Sass
Устарело в версии 5.3.0
@mixin list-group-item-variant($state, $background, $color) {
.list-group-item-#{$state} {
color: $color;
background-color: $background;
&.list-group-item-action {
&:hover,
&:focus {
color: $color;
background-color: shade-color($background, 10%);
}
&.active {
color: $white;
background-color: $color;
border-color: $color;
}
}
}
}
Циклы Sass
Цикл, который генерирует классы-модификаторы с переопределением переменных CSS.
// List group contextual variants
//
// Add modifier classes to change text and background color on individual items.
// Organizationally, this must come after the `:hover` states.
@each $state in map-keys($theme-colors) {
.list-group-item-#{$state} {
--#{$prefix}list-group-color: var(--#{$prefix}#{$state}-text-emphasis);
--#{$prefix}list-group-bg: var(--#{$prefix}#{$state}-bg-subtle);
--#{$prefix}list-group-border-color: var(--#{$prefix}#{$state}-border-subtle);
--#{$prefix}list-group-action-hover-color: var(--#{$prefix}emphasis-color);
--#{$prefix}list-group-action-hover-bg: var(--#{$prefix}#{$state}-border-subtle);
--#{$prefix}list-group-action-active-color: var(--#{$prefix}emphasis-color);
--#{$prefix}list-group-action-active-bg: var(--#{$prefix}#{$state}-border-subtle);
--#{$prefix}list-group-active-color: var(--#{$prefix}#{$state}-bg-subtle);
--#{$prefix}list-group-active-bg: var(--#{$prefix}#{$state}-text-emphasis);
--#{$prefix}list-group-active-border-color: var(--#{$prefix}#{$state}-text-emphasis);
}
}
Поведение JavaScript
Используйте JavaScript—плагин tab - включайте его отдельно или через скомпилированный bootstrap.js
файл — чтобы расширить нашу группу списков для создания панелей локального содержимого с вкладками.
<div class="row">
<div class="col-4">
<div class="list-group" id="list-tab" role="tablist">
<a class="list-group-item list-group-item-action active" id="list-home-list" data-bs-toggle="list" href="#list-home" role="tab" aria-controls="list-home">Home</a>
<a class="list-group-item list-group-item-action" id="list-profile-list" data-bs-toggle="list" href="#list-profile" role="tab" aria-controls="list-profile">Profile</a>
<a class="list-group-item list-group-item-action" id="list-messages-list" data-bs-toggle="list" href="#list-messages" role="tab" aria-controls="list-messages">Messages</a>
<a class="list-group-item list-group-item-action" id="list-settings-list" data-bs-toggle="list" href="#list-settings" role="tab" aria-controls="list-settings">Settings</a>
</div>
</div>
<div class="col-8">
<div class="tab-content" id="nav-tabContent">
<div class="tab-pane fade show active" id="list-home" role="tabpanel" aria-labelledby="list-home-list">...</div>
<div class="tab-pane fade" id="list-profile" role="tabpanel" aria-labelledby="list-profile-list">...</div>
<div class="tab-pane fade" id="list-messages" role="tabpanel" aria-labelledby="list-messages-list">...</div>
<div class="tab-pane fade" id="list-settings" role="tabpanel" aria-labelledby="list-settings-list">...</div>
</div>
</div>
</div>
Использование атрибутов данных
Вы можете активировать навигацию по группе списков без написания какого-либо JavaScript, просто указав data-bs-toggle="list"
или в элементе. Используйте эти атрибуты данных в .list-group-item
.
<div role="tabpanel">
<!-- List group -->
<div class="list-group" id="myList" role="tablist">
<a class="list-group-item list-group-item-action active" data-bs-toggle="list" href="#home" role="tab">Home</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#profile" role="tab">Profile</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#messages" role="tab">Messages</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#settings" role="tab">Settings</a>
</div>
<!-- Tab panes -->
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel">...</div>
<div class="tab-pane" id="profile" role="tabpanel">...</div>
<div class="tab-pane" id="messages" role="tabpanel">...</div>
<div class="tab-pane" id="settings" role="tabpanel">...</div>
</div>
</div>
С помощью JavaScript
Включить элемент списка с вкладками с помощью JavaScript (каждый элемент списка необходимо активировать индивидуально):
const triggerTabList = document.querySelectorAll('#myTab a')
triggerTabList.forEach(triggerEl => {
const tabTrigger = new bootstrap.Tab(triggerEl)
triggerEl.addEventListener('click', event => {
event.preventDefault()
tabTrigger.show()
})
})
const triggerEl = document.querySelector('#myTab a[href="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name
const triggerFirstTabEl = document.querySelector('#myTab li:first-child a')
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">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel">...</div>
<div class="tab-pane fade" id="messages" role="tabpanel">...</div>
<div class="tab-pane fade" id="settings" role="tabpanel">...</div>
</div>
Методы
Активирует ваш контент как элемент вкладки.
Вы можете создать экземпляр tab с помощью конструктора, например:
const bsTab = new bootstrap.Tab('#myTab')
Метод | Описание |
---|---|
dispose |
Уничтожает вкладку элемента. |
getInstance |
Статический метод, который позволяет вам получить экземпляр tab, связанный с элементом DOM, вы можете использовать его следующим образом: bootstrap.Tab.getInstance(element) . |
getOrCreateInstance |
Статический метод, который возвращает экземпляр tab, связанный с элементом DOM, или создает новый экземпляр, если он не был инициализирован. Вы можете использовать его следующим образом: bootstrap.Tab.getOrCreateInstance(element) . |
show |
Выбирает указанную вкладку и отображает связанную с ней панель. Любая другая вкладка, которая была выбрана ранее, становится невыбранной, а связанная с ней панель скрыта. Возвращается вызывающей стороне до фактического отображения панели вкладок (т.е. до того, как произойдет shown.bs.tab событие). |
Мероприятия
При отображении новой вкладки события запускаются в следующем порядке:
hide.bs.tab
(на текущей активной вкладке)show.bs.tab
(на вкладке "Что будет показано")hidden.bs.tab
(на предыдущей активной вкладке та же, что и дляhide.bs.tab
события)shown.bs.tab
(на только что показанной недавно активной вкладке, той же, что и дляshow.bs.tab
события)
Если ни одна вкладка еще не была активна, то события hide.bs.tab
и hidden.bs.tab
запускаться не будут.
Тип события | Описание |
---|---|
hide.bs.tab |
Это событие срабатывает, когда должна быть показана новая вкладка (и, следовательно, предыдущая активная вкладка должна быть скрыта). Используйте event.target и event.relatedTarget для перехода на текущую активную вкладку и новую вкладку, которая вскоре станет активной, соответственно. |
hidden.bs.tab |
Это событие срабатывает после отображения новой вкладки (и, следовательно, предыдущая активная вкладка скрыта). Используйте event.target и event.relatedTarget для перехода на предыдущую активную вкладку и новую активную вкладку соответственно. |
show.bs.tab |
Это событие срабатывает при отображении вкладки, но до отображения новой вкладки. Используйте event.target и event.relatedTarget для перехода на активную вкладку и предыдущую активную вкладку (если таковая имеется) соответственно. |
shown.bs.tab |
Это событие срабатывает при отображении вкладки после отображения вкладки. Используйте event.target и event.relatedTarget для перехода на активную вкладку и предыдущую активную вкладку (если таковая имеется) соответственно. |
const tabElms = document.querySelectorAll('a[data-bs-toggle="list"]')
tabElms.forEach(tabElm => {
tabElm.addEventListener('shown.bs.tab', event => {
event.target // newly activated tab
event.relatedTarget // previous active tab
})
})