Это карусель Flickity, содержащая изображения, которые открываются в Фотопролистывание.
В Flickity Slides есть теги a
, которые «работают», но модальное окно PhotoSwipe мигает до изменения window.location
(щелчок HTML по умолчанию).
Мне нужен какой-то тест перед запуском openPhotoSwipe()
, и я попробовал следующее, но он (конечно) работает только при втором щелчке:
$gallery.dataset = [];
$gallery.dataset.linkClicked = false;
$('.project-archive-link').on('click', function() {
$gallery.dataset.linkClicked = true;
});
$gallery.on('staticClick.flickity', function(event, pointer, cellElement, cellIndex) {
if (!cellElement) {
return;
}
// Photoswipe functions
var openPhotoSwipe = function() {
...
if ($gallery.dataset.linkClicked === false ) {
openPhotoSwipe();
}
Это CodePen с базовой структурой.
Держу пари, мой подход неверен.