DmitrySheklein
@DmitrySheklein

FancyBox 3 как получить доступ к контенту?

В событии
beforeShow: function(instance, current) {
  console.info('done!');
  console.info(current);
}

консоль выдаёт
{
  $content:[div.htmlDataBlock.fancybox, prevObject: k.fn.init(1)]
  $slide: [div.fancybox.fancybox, prevObject: k.fn.init(1)]
  $thumb: null
  contentType: "html"
  forcedDuration: undefined
  index: 0
  isComplete: true
  isLoaded: true
  isLoading: false
 }

но при вызове
beforeShow: function(instance, current) {
	console.info(current.$content);
}

выдаёт undefined, как правильно обратиться к контенту слайда? что это за свойства, написанные через $
Пример с проблемой в песочнице
  • Вопрос задан
  • 333 просмотра
Пригласить эксперта
Ответы на вопрос 2
@gribanov2la
Full stack web разработчик
По какой то причине в момент вызова console.log свойство $content еще не имеет массива ссылок на dom элементы, они заполняются позже (но console.log показывает состояние не в момент вызова, а актуальное).

Если разместите рабочий код в песочнице, можно будет понять в чем проблема.
Ответ написан
mrsexy
@mrsexy
Senior Pomidor
У вас контентная часть в html завёрнута в <div class="fancybox"> контент для fancybox </div> ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы