我正在使用jquery fancybox版本2.0.3。我想防止在fancybox外面点击关闭。我想强制用户单击十字按钮。我试过了
$(document).ready(function() {
$(".various").fancybox({
closeClick : false,
openEffect : 'none',
closeEffect : 'none',
hideOnOverlayClick:false,
hideOnContentClick:false
}).trigger("click");
});
但这似乎不适用于新版本的fancybox。我已经提到了链接
jquery fancybox - prevent close on click outside of fancybox
但这些解决方案似乎不适用于fancybox 2.0.3
答案 0 :(得分:83)
使用此选项:
helpers : {
overlay : {closeClick: false}
}
所以你的最终脚本应该是这样的:
$(document).ready(function() {
$(".various").fancybox({
closeClick : false, // prevents closing when clicking INSIDE fancybox
openEffect : 'none',
closeEffect : 'none',
helpers : {
overlay : {closeClick: false} // prevents closing when clicking OUTSIDE fancybox
}
}).trigger("click");
});
hideOnOverlayClick
和hideOnContentClick
是Fancybox v1.3.x的选项
答案 1 :(得分:2)
OP询问了有关fancyBox 2.0的信息,但是如果您是来这里寻找答案并且正在使用fancyBox 3.0+,则可以执行以下操作:
$('.various').fancybox({
clickSlide: false, // disable close on outside click
touch: false // disable close on swipe
});
您还可以通过将smallBtn
和toolbar
添加到选项数组并将两者都设置为false
来完全禁用关闭按钮。
经过fancyBox 3.5.7的测试。
答案 2 :(得分:0)
$(document).ready(function() {
$("#popup").fancybox({
closeClick : false,
openEffect : 'none',
closeEffect : 'none',
helpers : {
overlay : {
closeClick: false,
}
}
}).trigger("click");
});
答案 3 :(得分:0)
使用Vennik的解决方案 - jsfiddle.net/5EV8r/425。
如果您想阻止外部点击。
使用它例如:
$(".fancybox_pdf").fancybox({
helpers : {
overlay : {closeClick: false}
},
autoSize: false,
afterShow: function() {
$(".fancybox-close").click(function(e) {
e.preventDefault();
last.click();
});
}
});
答案 4 :(得分:0)
$('.refer').fancybox({'width':395,'height':135,'type':'iframe',title:{type:'outside'},'closeBtn':false,helpers:{overlay:{closeClick:false}
}})
enter link description here