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-fancyboxの外側のクリックで閉じるのを防ぐ
しかし、これらのソリューションはfancybox 2.0.3では機能しないようです。
このオプションを使用します。
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のオプションです
$(document).ready(function() {
$("#popup").fancybox({
closeClick : false,
openEffect : 'none',
closeEffect : 'none',
helpers : {
overlay : {
closeClick: false,
}
}
}).trigger("click");
});
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();
});
}
});