sur mon site, j'ouvre une fantaisie contenant du contenu iframe. Est-il possible de mettre à jour la taille de la fantaisie lorsqu'un lien est cliqué sur celui-ci? P>
Par exemple, je l'ai défini sur 535px largeur initialement, lorsqu'un lien spécifique est cliqué, j'aimerais que la fantaisie redimensionne à 900 px largeur. P>
Une idée de la façon dont je peux y parvenir? p>
merci! p>
5 Réponses :
$('a', $('#youriframeID').contentDocument).bind('click', function() { preventDefault(); $('#yourIframeID').attr('src', $(this).attr('href')); $('#yourIframeID').load(function() { $.fancybox.resize; }); }); If an 'a' is clicked within your iframe, the default events will be blocked. Instead, we change the src of your iframe. When it's loaded, #.fancybox.resize will automatically resize the fancybox in respect to the content. This is an idea, so the code will probably not yet work. Just to help you get on the right track.
Je pense que j'ai juste le même problème et dans mon cas, Fancybox.Resize n'a pas fonctionné, mais cela a fonctionné pour moi:
$("#lightbox").fancybox({ 'hideOnContentClick' : true, 'width' : 500, 'type' : 'iframe', 'padding' : 35, 'onComplete' : function() { $('#fancybox-frame').load(function() { // wait for frame to load and then gets it's height $('#fancybox-content').height($(this).contents().find('body').height()+30); }); } });
FANCYBOX V2-Version: `$ ('. FANCYBOX'). FANCYBOX ({Type: 'Iframe', Aftershow: Fonction () {$ ('. Fancybox-iframe'). Charge (Fonction (". Fondée -inner '). Hauteur ($ (ceci) .Contents (). Trouver (Bo Dy'). Hauteur () + 30);});}}); `
@Adrianvanvliet où puis-je ajouter ce code pour WordPress Plugin of Fancy Box?
Pour ceux qui pourraient venir ici à l'aide de FANCYBOX 2:
Ceci est le code qui a fonctionné pour moi p>
Définition de la hauteur et de la largeur travaillées pour moi, même avec AutoSize: True
Cela fonctionne pour moi sur FANCYBOX V2.1.4
$('#myid').fancybox({ closeBtn : false, padding : 0, preload : true, onUpdate : function(){ $.fancybox.update(); } });
Ajouter $. FANCYBOX.UPDATE () CODE> AUX
ONUPDATE CODE> Le gestionnaire d'événements provoquera une boucle infinie qui mangera votre CPU. Voici une expérience, ajoutez une ligne ci-dessus
console.log ("mise à jour déclenchée"); code> à l'aide de la console de navigateur Voir combien de fois appelé ...
FANCYBOX 3.3.1 redimension automatique de la boîte lorsque la teneur en iframe est rechargée. Le paramètre est "précharge" et la valeur par défaut est vraie. P>