Создайте список элементов, содержимое которых будет отображаться по клику на заголовок.
Как использовать компонент Accordion в UIkit 3
Компонент UIkit Accordion состоит из родительского контейнера с атрибутом uk-accordion
, заголовка и контентной части для каждого элемента.
Класс | Описание |
---|---|
.uk-accordion-title |
Определяет и стилизует переключатель для каждого элемента. Используйте тег <a> для элементов. |
.uk-accordion-content |
Определяет контентную часть для каждого элемента списка. |
<ul uk-accordion>
<li>
<a class="uk-accordion-title" href="#"></a>
<div class="uk-accordion-content"></div>
</li>
</ul>
<ul uk-accordion> <li class="uk-open"> <a class="uk-accordion-title" href="#">Элемент 1</a> <div class="uk-accordion-content"> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 2</a> <div class="uk-accordion-content"> <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor reprehenderit.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 3</a> <div class="uk-accordion-content"> <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat proident.</p> </div> </li> </ul>
Первый элемент активен
По умолчанию все элементы списка свернуты. Чтобы отменить стандартное поведение и всегда раскрывать один элемент, добавьте в атрибут параметр collapsible: false
<ul uk-accordion="collapsible: false">...</ul>
<ul uk-accordion="collapsible: false"> <li> <a class="uk-accordion-title" href="#">Элемент 1</a> <div class="uk-accordion-content"> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 2</a> <div class="uk-accordion-content"> <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor reprehenderit.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 3</a> <div class="uk-accordion-content"> <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat proident.</p> </div> </li> </ul>
Множественное раскрытие
По умолчанию активным может быть один элемент. При клику на следующий элемент, предыдущий закрывается. Для отключения сворачивания добавьте в атрибут uk-accordion
родительского блока опцию multiple: true
<ul uk-accordion="multiple: true">...</ul>
<ul uk-accordion="multiple: true"> <li class="uk-open"> <a class="uk-accordion-title" href="#">Элемент 1</a> <div class="uk-accordion-content"> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 2</a> <div class="uk-accordion-content"> <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor reprehenderit.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 3</a> <div class="uk-accordion-content"> <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat proident.</p> </div> </li> </ul>
Установка позиций открытия
В стандартном режиме активным элементом считается первый. Вы можете переопределить порядок раскрытия элементов, указав, какой элемент или элементы будут открыты.
Для этого добавьте интересующим элементам класс .uk-open
. Для открытия нескольких элементов сразу добавьте опцию multiple: true
в атрибут uk-accordion
родительского элемента.
Внимание Кроме того, вы можете открыть любой элемент списка, добавив опцию active: <index>
в атрибут uk-accordion
родителя, например, active: 1
для раскрытия второго элемента списка. Обратите внимание, что отсчет начинается с нуля. При этом класс uk-open
указанного элемента перезапишется.
<ul uk-accordion>
<li></li>
<li class="uk-open"></li>
<li></li>
</ul>
<ul uk-accordion> <li> <a class="uk-accordion-title" href="#">Элемент 1</a> <div class="uk-accordion-content"> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p> </div> </li> <li class="uk-open"> <a class="uk-accordion-title" href="#">Элемент 2</a> <div class="uk-accordion-content"> <p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor reprehenderit.</p> </div> </li> <li> <a class="uk-accordion-title" href="#">Элемент 3</a> <div class="uk-accordion-content"> <p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat proident.</p> </div> </li> </ul>
Опции компонента Accordion
Любой из этих параметров может быть добавлен к атрибуту компонента. Разделяйте несколько вариантов точкой с запятой. Подробнее
Опция | Тип данных | По умолчанию | Описание |
---|---|---|---|
active |
Number | false |
Index элемента, открытого по умолчанию. |
animation |
Boolean | true |
Установка анимации элемента. |
collapsible |
Boolean | true |
Разрешить закрытие всех элементов. |
content |
String | > .uk-accordion-content |
Селектор содержимого, выбирающий элементы контента. |
duration |
Number | 200 |
Задержка анимации в миллисекундах. |
multiple |
Boolean | false |
Разрешить несколько открытых элементов. |
targets |
String | > * |
CSS селектор элементов для метода toggle. |
toggle |
String | > .uk-accordion-title |
Селектор переключателя элементов. |
transition |
String | ease |
Опция задает значение свойства transition. Использутйе стандартные свойства CSS. смотреть все свойства. |
JavaScript
Подробнее JavaScript компонентах.
Инициализация
UIkit.accordion(element, options);
События
Для компонента Accordion доступны следующие события:
Название | Описание |
---|---|
beforeshow |
Срабатывает до активации до раскрытия элемента. Может отменить событие и вернуть false . |
show |
Срабатывает после раскрытия элемента. |
shown |
Срабатывает после окончания анимации элемента. |
beforehide |
Срабатывает до раскрытия элемента. Может отменить скрытие и вернуть false . |
hide |
Срабатывает после запуска анимации скрытия элемента. |
hidden |
Проставляется после скрытия элемента. |
Методы
У компонента есть следующие методы:
Toggle
UIkit.accordion(element).toggle(index, animate);
Переключатель панели контента.
Имя | Тип | По умолчанию | Описание |
---|---|---|---|
index |
String, Integer, Node | 0 | Порядковый номер заголовка-переключателя. Начинается с нулевого индекса.. |
animate |
Boolean | true | Отменить анимацию раскрытия и вернуть false. |