这是一个Flickity轮播,其中包含在PhotoSwipe中打开的图像。
a
Flickity Slides 中有一些“工作”的标签,但 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 。
我打赌我的方法是错误的。