Библиотека BasicLightbox предназначена для создания простых модальных окон на веб-страницах. Она предоставляет гибкий интерфейс настройки через объект опций, который позволяет контролировать визуальное отображение, анимацию и взаимодействие с модальными окнами. Объект опций передаётся в функцию инициализации и может содержать множество параметров, каждый из которых влияет на работу библиотеки. Рассмотрим основные элементы структуры этого объекта.
Этот параметр принимает DOM-элемент, который будет использоваться в
качестве контента модального окна. Это может быть любой HTML-элемент,
такой как div, img, или другой элемент,
содержащий нужный контент.
Пример:
const lightbox = basicLightbox.create(
document.querySelector('img')
);
В этом примере в качестве контента модального окна используется изображение.
Функция, которая будет вызвана, когда модальное окно закрывается. Это может быть полезно для выполнения дополнительных действий, таких как очистка данных или отправка логов.
Пример:
const lightbox = basicLightbox.create(
'<p>Моё модальное окно</p>',
{
onClose: () => {
console.log('Модальное окно закрыто');
}
}
);
Функция, которая вызывается сразу после появления модального окна. Этот параметр может быть полезен для выполнения действий при открытии окна, например, для анимации или установки фокуса на элемент.
Пример:
const lightbox = basicLightbox.create(
'<div>Новый контент</div>',
{
onShow: () => {
console.log('Модальное окно открыто');
}
}
);
Этот параметр управляет возможностью закрыть модальное окно при клике
на фон. По умолчанию этот параметр установлен в true, что
означает, что модальное окно закроется при клике вне его границ. Если
значение параметра изменить на false, закрытие окна таким
способом будет невозможно.
Пример:
const lightbox = basicLightbox.create(
'<p>Текст</p>',
{
closable: false
}
);
Управляет возможностью перетаскивания модального окна. Этот параметр
позволяет пользователям перемещать окно по экрану, если значение
установлено в true. В противном случае окно будет
неподвижным.
Пример:
const lightbox = basicLightbox.create(
'<div>Перетаскиваемое окно</div>',
{
draggable: true
}
);
Параметр, который определяет, будет ли прокрутка страницы отключена
при открытии модального окна. По умолчанию это значение установлено в
false. Когда оно установлено в true, прокрутка
страницы будет заблокирована до тех пор, пока окно не будет закрыто.
Пример:
const lightbox = basicLightbox.create(
'<p>Текст без прокрутки</p>',
{
disableScroll: true
}
);
Параметр, управляющий видимостью фона окна. Если значение установлено
в true, фон (оверлей) будет скрыт, и модальное окно
отобразится без затемнения фона. По умолчанию оверлей виден.
Пример:
const lightbox = basicLightbox.create(
'<div>Без затемнения</div>',
{
hideOverlay: true
}
);
Этот параметр указывает, будет ли окно открыто автоматически сразу
после инициализации. Если значение установлено в false,
окно нужно будет открыть вручную с помощью метода
show().
Пример:
const lightbox = basicLightbox.create(
'<p>Скрытое окно</p>',
{
open: false
}
);
// Открытие окна вручную
lightbox.show();
Опция для внедрения содержимого в виде iframe. Если значение
установлено в true, модальное окно будет отображать внешний
контент, загруженный в iframe, что позволяет встраивать видеоролики или
другие ресурсы с внешних сайтов.
Пример:
const lightbox = basicLightbox.create(
'<iframe src="https://www.youtube.com/embed/dQw4w9WgXcQ" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>',
{
iframe: true
}
);
Позволяет настроить отступы внутри модального окна. Это может быть
полезно для регулировки пространства между контентом и рамками окна.
Значение может быть задано как строка с указанием размеров отступов
(например, "10px", "1em", или
"2rem").
Пример:
const lightbox = basicLightbox.create(
'<div>Контент с отступами</div>',
{
padding: '20px'
}
);
Определяет прозрачность фона (оверлея), который появляется за модальным окном. Это значение принимает числа от 0 (полностью прозрачный) до 1 (полностью непрозрачный). Это позволяет настроить степень затемнения фона в зависимости от предпочтений.
Пример:
const lightbox = basicLightbox.create(
'<p>Прозрачный фон</p>',
{
overlayOpacity: 0.3
}
);
Позволяет настроить анимацию для появления и исчезновения модального
окна. Это может быть полезно для улучшения пользовательского интерфейса.
Библиотека поддерживает несколько типов анимаций, таких как
fade, scale, или можно задать свои кастомные
анимации.
Пример:
const lightbox = basicLightbox.create(
'<p>С анимацией</p>',
{
animation: 'fade'
}
);
Объект опций библиотеки BasicLightbox предлагает широкие возможности
для настройки модальных окон. Параметры, такие как element,
onClose, closable, и многие другие, позволяют
точно настроить поведение и внешний вид модальных окон в зависимости от
нужд проекта.