Pregunta

Estoy usando el complemento FancyBox y cuando el usuario hace clic en una imagen pequeña, aparece una imagen más grande.Vi el código para hacerlo con 1 imagen, pero no para 2, así que supuse que la forma correcta era simplemente hacer lo siguiente, y tengo curiosidad por saber si es correcto o no.¿Simplemente coloca el elemento de declaraciones en el que desea que funcione fancybox uno después del otro?

<script type="text/javascript">
    $(document).ready(function() {
        $("a#link1").fancybox();
        $("a#link2").fancybox();
    });
</script>
¿Fue útil?

Solución

Si usted planea en tener varios enlaces que desea que esto suceda, usted podría simplemente darles toda una clase de fancybox y luego hacer:

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

De esta manera cada vez que tenga enlaces nuevos que deben ser cajas de fantasía que no hay que darles identificadores únicos y volver a la Javascript para asegurarse de que están siendo initiliazed. Puede tener más de 1 clase por elemento por lo que también no afectará a las clases existentes. La mayoría de las veces cuando se tiene conjuntos de algo que es aconsejable utilizar las clases para que pueda tratarlos como tales cuando manipularlos con jQuery.

Otros consejos

Sí, es correcto poner el código que deseas ejecutar. listo bloquear.Puedes usar una sintaxis más corta.

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

que hace exactamente lo mismo.

Sí que se ve bien.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top