Resolví mi problema original, pero me pregunto si hay una solución más elegante. Estoy usando la Órbita de la Fundación para crear una presentación de diapositivas. Esta no es una presentación de diapositivas simple, es una presentación de diapositivas en la que cada diapositiva tiene un subtítulo de datos definido, y dentro de este subtítulo de datos hay un HTML que necesita cargar un cuadro de diálogo modal.¿Hay alguna manera de pasar una función de inicialización a una presentación de diapositivas de Orbit?
Si está utilizando Foundation, inmediatamente piensa en utilizar la biblioteca Reveal para mostrar un diálogo modal, y lo haría, pero los requisitos requieren el uso de prettyPhoto. (. Esos son los requisitos) Bueno, el problema es que los elementos de la técnica de subtítulos no se ven afectados por la llamada de inicialización original a:
$("a[rel^='prettyPhoto']").prettyPhoto();
Lo que necesito hacer es asegurarse de inicializar cada dato -caption como está cargado. Bueno, aquí está el problema. He resuelto esto para las transiciones de diapositivas mediante el uso del evento afterSlideChange, pero el problema es la primera diapositiva. Necesito llamar a este método para la primera diapositiva que se muestra.
Aquí está el código que resuelve este problema:
<script type="text/javascript">
$(window).load(function() {
$('#featured').orbit({
afterSlideChange:function() {
$("a[rel^='prettyPhoto']").prettyPhoto({
default_width:640,
default_height:500,
theme:'light_square'
});
}, // empty function
fluid:true // or set a aspect ratio for content slides (ex: '4x3')
});
$("a[rel^='prettyPhoto']").prettyPhoto({
default_width:640,
default_height:500,
theme:'light_square'
});
});
</script>
¿Hay una mejor manera de hacer esto sin tener que duplicar ese código. ¿Debo definir un evento de "initializeSlide", o hay alguna respuesta que me falta?
¿Obtuviste una solución para esto? –