Question

J'utilise le plugin FancyBox et lorsque l'utilisateur clique sur une petite image, une image apparaît. J'ai vu le code pour le faire avec 1 image, mais pas pour les deux, donc je suppose la bonne façon de le faire était simplement ce qui suit, que je suis curieux de savoir s'il est correct ou non? Ne vous mettez simplement l'élément des déclarations que vous voulez le faire fonctionner fancybox à droite après l'autre.

<script type="text/javascript">
    $(document).ready(function() {
        $("a#link1").fancybox();
        $("a#link2").fancybox();
    });
</script>
Était-ce utile?

La solution

Si vous envisagez d'avoir plusieurs liens que vous voulez que cela se produise avec, vous pouvez simplement leur donner toute une classe de fancybox puis faire:

$(function() {
    $('a.fancybox').fancybox();
});

De cette façon, chaque fois que vous avez de nouveaux liens qui devraient être des boîtes de fantaisie que vous n'avez pas à leur donner des identifiants uniques et revenir au javascript pour vous assurer qu'ils sont initiliazed. Vous pouvez avoir plus de 1 classe par élément de sorte qu'il n'affectera aussi les classes existantes. La plupart du temps lorsque vous avez des ensembles de quelque chose, il est sage d'utiliser des classes afin que vous puissiez les traiter comme tels lors de leur manipulation avec jQuery.

Autres conseils

Eh oui, il est correct

pour mettre le code que vous voulez exécuter dans prêt bloc. Vous pouvez utiliser la syntaxe plus courte

<script type="text/javascript">
    $(function() {
        $("a#link1").fancybox();
        $("a#link2").fancybox(); 
    });
</script>

qui fait exactement la même chose.

Oui qui ressemble bien.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top