
Если пользуетесь jQuery плагином fancybox, то могли сталкиваться с тем, что необходимо увязать логику каких то других скриптов с фактом, показан ли попап в текущий момент или нет.
К сожалению, в официальной документации к API fancуbox нет упоминаний о методе, позволяющем определить — открыто ли всплывающее окно в текущий момент. Явное упущение разработчиков.
Но гарантированно проверить этот факт не сложно.
Достаточно посмотреть добавлен ли в <body> css класс fancybox-active или нет:
|
|
if ($('body').hasClass('fancybox-active')) { // .. окно активно } else { // .. открытых окон fancybox в текущий момент нет } |
Маловероятно, что разработчики поменяют название класса в будущем, потому можно использовать данный метод. Но, возможно, они расширят своё API и добавят функцию проверки.
Данная запись опубликована в 13.12.2018 21:07 и размещена в рубрике jQuery.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Декабрь 8, 2012 г.
Обычно, "проблема" возникает с данными, получаемыми через асинхронные запросы (ajax-запрос). Вы пытаетесь выполнить jQuery.find() для полученных данных, а функция возвращает пустой объект.
В примере ниже, мы пытаемся извлечь содержимое HTML контейнера ...
Читать
Декабрь 17, 2018 г.
При работе с HTML документом из JavaScript одной из типовых операций является установка значения того или иного атрибута выбранного контейнера (тега).
Vanila JS
В чистом js (vanila) значение атрибута можно установить следующим образом:
[crayon-69632bc8a09dc333421091/] ...
Читать
Октябрь 26, 2015 г.
Одна из типичных задач для улучшения пользовательского интерфейса на сайтах - это визуализация ожидания загрузки/обновления страницы. Наиболее частый случай ...
Читать
Ноябрь 17, 2018 г.
Часто использую функцию jQuery API each(), но иногда требуется досрочно прервать выполнение этого цикла. Итак, как выйти из $.each()?
Обработка происходит внутри функции, и на выходе требуется сигнализировать API что делать дальше. Перебор элементов ...
Читать