繁体   English   中英

防止在PhotoSwipe中滑动/拖动幻灯片

[英]Prevent Swiping/Dragging of slides in PhotoSwipe

我似乎无法使用Photoswipe来防止拖动/滑动更改幻灯片(因此,只有箭头指向上一张/下一张幻灯片)

问题在于我有一张带有触摸事件的HTML幻灯片,但是photoswipe的触摸事件正在取代它们,当在幻灯片的内容中拖动时,整个幻灯片也会移动......

我以为这个事件本来应该阻止它?

pswp.listen('preventDragEvent', function(e, isDown, preventObj) {
    preventObj.prevent = true;
});

我也尝试了'isClickableElement'选项,但这似乎没有帮助,要么......

这种方法并不理想,但是如果您想要在不使用PhotoSwipe的修改版本的情况下禁用滑动/拖动,这对我有用:

var allowSwipe = false;
function preventSwipe (e) {
    if (!allowSwipe) {
        e.preventDefault();
        e.stopPropagation();
    }
}

pswp.container.addEventListener('pointerdown', preventSwipe);
pswp.container.addEventListener('MSPointerDown', preventSwipe);
pswp.container.addEventListener('touchstart', preventSwipe);
pswp.container.addEventListener('mousedown', preventSwipe);

或者如果你正在使用jQuery:

var allowSwipe = false;
$(pswp.container).on('pointerdown MSPointerDown touchstart mousedown', function () {
    return allowSwipe;
});

使用allowSwipe变量,可以通过将其设置为true随时重新启用滑动。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM