Estoy tratando de cargar dinámicamente fancybox a través de getScript y luego adjuntarlo a un elemento. Tengo el fancybox cargado dinámicamente dentro de un documento listo ...
Así que va.
documents ready -> getScript
Pero no parece querer adjuntar a mi una etiqueta (.fancybox
) si hago una console.log jQuery(".fancybox")
Obtengo un [] pero el elemento ya está cargado? Y si escribo jQuery(".fancybox").fancybox();
en la consola en Google Chrome todavía no funciona?
¿Alguna idea de lo que estoy haciendo mal?
jQuery.getScript("/fancybox/jquery.fancybox.pack.js", function() {
console.log(jQuery(".fancybox"),jQuery("a"));
return jQuery(".fancybox").fancybox();
});
El elemento es una etiqueta simple que envuelve una imagen y NO se carga dinámicamente.
<div class="youtube"><a href="http://www.youtube.com/watch?v=1svYgdfgfdf" class="fancybox"><img height="181" src="/images/images/youtube-video.png" width="326"></a></div>
Respuestas
0 para la respuesta № 1el documento listo es demasiado temprano, intente envolverlo $(window).load(function(){//CODE HERE});
en su lugar, ya que solo debe ejecutarse después de que se haya cargado el DOM, por lo que puede aplicar su fancybox a su elemento DOM.
0 para la respuesta № 2
Prueba esto:
jQuery.getScript("/fancybox/jquery.fancybox.pack.js", function() {
jQuery(document).ready(function() {
jQuery(".fancybox").fancybox();
});
});
EDITAR: función llamada fija