Выберите свойства данных из html-элементов галереи в Fancybox, используя jQuery - PullRequest
0 голосов
/ 28 сентября 2019

Я создал галерею с помощью Fancybox https://fancyapps.com/fancybox/3/. Миниатюрные изображения, по которым можно нажимать (для просмотра больших изображений), имеют свойства данных, к которым я хочу получить (flip-h, flip-v и т. Д.) Послезагрузка основного изображения (большего изображения в теге привязки, а не миниатюры в теге img).

Рассмотрим этот HTML-код:

<a data-lightbox="gallery" href="some_image.jpg">
    <img src="some_image_thumb.jpg" data-rotation="90" data-flip-h="180" data-flip-v="0">
</a>

И этот код javascript / jQuery:

$().fancybox({
    selector : '[data-lightbox="gallery"]',
    afterLoad: function ( instance, slide ){
        var flip-h = ?;
        var flip-v = ?;
        var rotation = ?;    
    }
});

Для меня не имеет значения, если свойства данных находятся внутри элемента привязки следующим образом:

<a data-lightbox="gallery" href="some_image.jpg" data-rotation="90" data-flip-h="180" data-flip-v="0">
    <img src="some_image_thumb.jpg">
</a>

Все, чего я хочу добиться, - это получить эти свойства ("постнагрузки ").Помощь очень ценится.

1 Ответ

0 голосов
/ 28 сентября 2019

Я думаю, что нашел решение:

<a data-lightbox="gallery" href="some_image.jpg" data-rotation="90" data-flip-h="180" data-flip-v="0">
    <img src="some_image_thumb.jpg">
</a>


$().fancybox({
    selector : '[data-lightbox="gallery"]',
    afterLoad: function ( instance, slide ){
        var flip_h = instance.current.opts.$orig.data('flip-h');
        var flip_v = instance.current.opts.$orig.data('flip-v');
        var rotation = instance.current.opts.$orig.data('rotation');    
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...