Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Fancybox 3-防止移动视图向上滑动或单击覆盖区域关闭_Jquery_Css_Fancybox 3 - Fatal编程技术网

Jquery Fancybox 3-防止移动视图向上滑动或单击覆盖区域关闭

Jquery Fancybox 3-防止移动视图向上滑动或单击覆盖区域关闭,jquery,css,fancybox-3,Jquery,Css,Fancybox 3,我正在努力使一个fancybox只能通过关闭按钮关闭。我看过fancyBox3文档,但仍然不知道。fancybox默认设置只能防止鼠标单击外部关闭和鼠标触摸关闭。即使触摸设置设置为false,向上滑动或单击覆盖区域关闭问题仍会在mobile view上发生 我有一个示例脚本来显示fancybox HTML 有没有办法防止手机近距离刷卡?谢谢 试试这个。给出“touch:false而不是touch:false $(文档).ready(函数(){ $.fancybox.open({ src:“f

我正在努力使一个fancybox只能通过关闭按钮关闭。我看过fancyBox3文档,但仍然不知道。fancybox默认设置只能防止鼠标单击外部关闭和鼠标触摸关闭。即使触摸设置设置为false,向上滑动或单击覆盖区域关闭问题仍会在mobile view上发生

我有一个示例脚本来显示fancybox

HTML

有没有办法防止手机近距离刷卡?谢谢

试试这个。给出
“touch:false
而不是
touch:false

$(文档).ready(函数(){
$.fancybox.open({
src:“fancybox”,
键入:“内联”,
单击幻灯片:“错误”,
单击外部:“false”,
“触摸”:错误
});
});

这是禁用垂直拖动的方法:

$('[data-fancybox="images"]').fancybox({
  touch: {
    vertical: false
  }
});

演示-

你所说的“移动拖拽”到底是什么意思?你真的是指向上滑动还是类似的动作?@CBroe是的,你可以使用手机查看JSFIDLE链接,并尝试向上滑动覆盖区域,fancybox甚至会关闭设置为false的“touch”选项。
touch
选项似乎只通过滑动控制是否可以导航到上一个/下一个项目,但不影响关闭行为。我想您可以尝试捕获刷起导致的事件,并在fancybox提供的
处理程序beforeClose
中取消它。不确定内部是否存在导致其关闭的事件的信息;如果没有,您可能需要使用自己的事件处理程序来捕获该事件,然后设置一个标志或其他东西,以便在关闭前检查。可能还需要根据计时器重新设置该标志…为什么社区不检查答案就投否决票。。。?我的答案是正确的。@jkythc请检查我的答案。也许我的问题不清楚,我的意思是刷上覆盖的黑色区域,它仍然关闭弹出窗口。在你的小提琴弹出窗口中,当我刷上时关闭,在我的小提琴中,没有点击关闭按钮弹出窗口,不要关闭,我想你想要这样。说来话长,但这里是如何使它工作-顺便说一句,我已经更新了第一个演示,它在v3.2中工作。@Janis你能添加更多关于如何解决它的信息吗?我也有同样的问题,当在Android设备上观看时,Fancybox显示的内容会关闭。我不能将touch vertical设置为false,因为内容需要滚动-但当我滚动时,它会关闭!提前谢谢。
$(document).ready(function() {
    $.fancybox.open({
    src: "#fancybox",
    type: "inline",
    clickSlide : 'false',
    clickOutside : 'false',
    touch: false            
  });
});
$('[data-fancybox="images"]').fancybox({
  touch: {
    vertical: false
  }
});