Вступление #

Для работы аккордеона можно использовать класс .js-accordion по умолчанию и специальную разметку.

Таким образом консультация с широким активом требуют от нас анализа форм развития. Идейные соображения высшего порядка, а также рамки и место обучения кадров представляет собой интересный эксперимент проверки модели развития. Не следует, однако забывать, что рамки и место обучения кадров позволяет оценить значение систем массового участия. Таким образом постоянное информационно-пропагандистское обеспечение нашей деятельности обеспечивает широкому кругу (специалистов) участие в формировании дальнейших направлений развития.

Таким образом новая модель организационной деятельности в значительной степени обуславливает создание новых предложений. Разнообразный и богатый опыт консультация с широким активом обеспечивает широкому кругу (специалистов) участие в формировании модели развития. Задача организации, в особенности же укрепление и развитие структуры в значительной степени обуславливает создание позиций, занимаемых участниками в отношении поставленных задач. Не следует, однако забывать, что реализация намеченных плановых заданий способствует подготовки и реализации позиций, занимаемых участниками в отношении поставленных задач. Разнообразный и богатый опыт укрепление и развитие структуры требуют определения и уточнения соответствующий условий активизации.

Accordion content 2

Accordion content 3

Установка #

Пример разметки и инициализации аккордеона.

Чтобы заранее активировать аккордеон, триггеру .accordion-trigger необходимо добавить атрибут aria-expanded="true".

<div class="js-accordion">
	<div class="accordion-item">
		<button class="accordion-trigger" type="button" aria-expanded="true">Accordion 1</button>
		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 1</p>
			</div>
		</div>
	</div>

	<div class="accordion-item">
		<button class="accordion-trigger" type="button">Accordion 2</button>
		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 2</p>
			</div>
		</div>
	</div>

	<div class="accordion-item">
		<button class="accordion-trigger" type="button">Accordion 3</button>
		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 3</p>
			</div>
		</div>
	</div>
</div>
BasicAccordion.init('.my-accordion')
BasicAccordion.init(document.querySelector('.my-accordion'))
BasicAccordion.init(document.querySelectorAll('.my-accordion'))

// или

BasicAccordion.init() // по умолчанию инициaлизирует элементы с классом .js-accordion

Конфигурация #

Настройки, заданные с использованием data-атрибутов.

data-accordion-prev-hide #

Если необходимо скрыть активный аккордеон при клике на соседний, то можно воспользоваться специальным дата-атрибутом data-accordion-prev-hide.

<div class="js-accordion" data-accordion-prev-hide="true">
	<div class="accordion-item">
		<button class="accordion-trigger" type="button">Accordion 1</button>

		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 1</p>
			</div>
		</div>
	</div>

	<div class="accordion-item">
		<button class="accordion-trigger" type="button">Accordion 2</button>

		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 2</p>
			</div>
		</div>
	</div>

	<div class="accordion-item">
		<button class="accordion-trigger" type="button">Accordion 3</button>

		<div class="accordion-content">
			<div class="content">
				<p>Accordion content 3</p>
			</div>
		</div>
	</div>
</div>

Таким образом консультация с широким активом требуют от нас анализа форм развития. Идейные соображения высшего порядка, а также рамки и место обучения кадров представляет собой интересный эксперимент проверки модели развития. Не следует, однако забывать, что рамки и место обучения кадров позволяет оценить значение систем массового участия. Таким образом постоянное информационно-пропагандистское обеспечение нашей деятельности обеспечивает широкому кругу (специалистов) участие в формировании дальнейших направлений развития.

Таким образом новая модель организационной деятельности в значительной степени обуславливает создание новых предложений. Разнообразный и богатый опыт консультация с широким активом обеспечивает широкому кругу (специалистов) участие в формировании модели развития. Задача организации, в особенности же укрепление и развитие структуры в значительной степени обуславливает создание позиций, занимаемых участниками в отношении поставленных задач. Не следует, однако забывать, что реализация намеченных плановых заданий способствует подготовки и реализации позиций, занимаемых участниками в отношении поставленных задач. Разнообразный и богатый опыт укрепление и развитие структуры требуют определения и уточнения соответствующий условий активизации.

Accordion content 2

Accordion content 3

Методы #

show() #

Раскрывает дочерний аккордеон.

BasicAccordion.show('.my-accordion-item-01') // принимает значение типа Object или String

hide() #

Скрывает дочерний аккордеон.

BasicAccordion.hide('.my-accordion-item-01') // принимает значение типа Object или String

reset() #

Сбросить аккордеон — скрывает все дочерние элементы.

BasicAccordion.reset('.my-accordion') // принимает значение типа Object или String

Экземпляр #

У каждого инициализированного элемента есть свой экземпляр.

const myAccordion = document.querySelector('.my-accordion')

console.log(myAccordion.BasicAccordion) // пример экземпляра

В настоящее время экземпляр поддерживает все методы.

Прослушивание событий #

Можно прослушать события элемента и получить нужные параметры.

accordion:change #

Срабатывает при переключении аккордеона.

Параметры:

Название Тип Описание
event.detail.el object Сам элемент.
event.detail.index number index выбранного аккордеона.
event.detail.next object Выбранный аккордеон.
event.detail.previous object Предыдущий выбранный аккордеон.
const myAccordion = document.querySelector('.my-accordion')

myAccordion.addEventListener(
	'accordion:change',
	function () {
		console.log(event.detail) // параметры
	},
	false,
)