J'utilise jquery fancybox version 2.0.3. Je veux empêcher la fermeture d'un clic en dehors de fancybox. Je veux forcer l'utilisateur à cliquer sur le bouton en croix. j'ai essayé
$(document).ready(function() {
$(".various").fancybox({
closeClick : false,
openEffect : 'none',
closeEffect : 'none',
hideOnOverlayClick:false,
hideOnContentClick:false
}).trigger("click");
});
mais cela ne semble pas fonctionner dans la nouvelle version de fancybox. J'avais référé le lien
jquery fancybox - empêche la fermeture d'un clic en dehors de fancybox
mais ces solutions ne semblent pas fonctionner dans fancybox 2.0.3
Utilisez cette option:
helpers : {
overlay : {closeClick: false}
}
donc votre script final devrait ressembler à:
$(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
et hideOnContentClick
sont des options pour Fancybox v1.3.x
$(document).ready(function() {
$("#popup").fancybox({
closeClick : false,
openEffect : 'none',
closeEffect : 'none',
helpers : {
overlay : {
closeClick: false,
}
}
}).trigger("click");
});
Utilisation de la solution de Vennik - jsfiddle.net/5EV8r/425 .
Si vous souhaitez empêcher le clic à l'extérieur.
Utilisez-le par exemple:
$(".fancybox_pdf").fancybox({
helpers : {
overlay : {closeClick: false}
},
autoSize: false,
afterShow: function() {
$(".fancybox-close").click(function(e) {
e.preventDefault();
last.click();
});
}
});