/ / Agregar una URL a un Iframe al que llama Fancybox2-AJAX según el ID de Iframe: javascript, jquery, ajax, fancybox-2

Agregar un URL a un Iframe al que llama Fancybox2-AJAX Basado en el ID del Iframe - javascript, jquery, ajax, fancybox-2

Bueno, tengo este trabajo menos el hecho de tenerlo funcionando una vez que llame con Fancybox a través de AJAX.

Trabajos de ejemplo estático:

 <iframe id="videourl1" width="640" height="340" src="" frameBorder="0"></iframe>
<iframe id="videourl2" width="640" height="340" src="" frameBorder="0"></iframe>
<iframe id="videourl3" width="640" height="340" src="" frameBorder="0"></iframe>

$("div.video-container iframe").each(function(){var idAdd=$(this).attr("id");$(this).attr("src","http://www.youtube.com/embed/"+idAdd+"?rel=0&autoplay=0&modestbranding=1&showinfo=0&autohide=1")})

Ahora, cuando tomo esto y coloco los 3 iframes en archivos .txt y los llamo desde un archivo index.html usando la llamada fancybox2-ajax, falla:

Index.html:

  <a id="1" class="fancybox fancybox.ajax" href="text/1.txt">Link</a>
<a id="2" class="fancybox fancybox.ajax" href="text/2.txt">Link</a>
<a id="3" class="fancybox fancybox.ajax" href="text/3.txt">Link</a>

Los archivos de texto contienen los iframes:

  <iframe id="videourl" width="640" height="340" src="" frameBorder="0"></iframe>

¿Cómo puedo codificar el JS para decir que se ejecute cada vez que AJAX llama al iframe?

Respuestas

0 para la respuesta № 1

Puedes usar el callback de fancybox afterLoad para ejecutar javascript una vez cargado el contenido.

Sin embargo, parece innecesario saltar a través de todos estos aros para cargar un video en lugar de solo usar el asistente de medios:

<a class="fancybox-media" href="http://www.youtube.com/watch?v=opj24KnzrWo">Youtube</a>

<script type="text/javascript">
$(document).ready(function() {
$(".fancybox-media").fancybox({
helpers : {
media : {}
}
});
</script>

});


-2 para la respuesta № 2

Responder:

$(".fancybox").fancybox({
afterShow: function () {
$("div.video-container iframe").each(function () {
var idAdd = $(this).attr("id");
$(this).attr("src", "http://www.youtube.com/embed/" + idAd‌d + "?rel=0&autoplay=0&modestbranding=1&showinfo=0&autohide=1")
});
}
});