2011-02-09 20 views
7

Usando Fancybox a play youtube videos in a modal box.Fancybox returning "No se puede cargar el contenido solicitado. Inténtalo de nuevo más tarde".

Mi problema es que sigo recibiendo "No se puede cargar el contenido solicitado. Vuelva a intentarlo más tarde".

El cuadro modal está surgiendo así que sé que el script se está ejecutando, podría ser un problema con mi llamada a la API ... aquí está mi llamada:

<script type="text/javascript"> 
$(document).ready(function() { 

      /* This is basic - uses default settings */ 

      $("a.fancybox").fancybox({ 
       'hideOnContentClick': true 
      }); 

      /* This is a non-obtrustive method for youtube videos*/ 

      $("a[rel=fancyvideo]").fancybox({ 
       overlayShow: true, 
       frameWidth:640, 
       frameHeight:360, 
      }); 
     }); 
</script> 

Respuesta

7

¿tiene alguna <a> s con tanto class="fancybox" y rel="fancyvideo"? Si lo haces, vincularás Fancybox a esos elementos dos veces y Fancybox podría no gustarle. Intente sacar este:

$("a.fancybox").fancybox({ 
    'hideOnContentClick': true 
}); 

Y vea qué pasa con solo el segundo en su lugar.

ACTUALIZACIÓN: Extraño. La demostración (http://chadly.net/demos/video-lightbox.html) está produciendo un HTML diferente al de su página, la demostración construye un <object data=...> pero el suyo crea una cosa de <object><embed src="youtube-url">. ¿Estás diciendo:

type: 'swf' 

en su FancyBox vinculante, que es donde las cosas <object><embed>...</embed></object> viene. Sin embargo, el href apunta a una página HTML simple y antigua de visualización de videos de YouTube y que href termina como el atributo src para el <embed>. La URL para incrustar un video de YouTube no es lo mismo que la página HTML del video y esa es probablemente la fuente de su problema.

sustituya el href que tiene este aspecto:

http://www.youtube.com/watch?v=QmVvgSfdmJQ 

con uno como este:

http://www.youtube.com/embed/QmVvgSfdmJQ 

La primera es la página HTML plano para YouTube, el segundo es el SWF integrable.

ACTUALIZACIÓN 2: El ejemplo se trabaja a partir de FancyBox es 1.0.0, pero que está utilizando 1.3.4, 1.0.0 tiene algunos controles especiales para YouTube que no están presentes en las versiones posteriores:

//... 
} else if (url.match(/youtube\.com\/watch/i)) { 
//... 

eso es a partir de 1.0.0 y el código después de que else if reescribe el URL de la página HTML (por ejemplo http://www.youtube.com/watch?v=QmVvgSfdmJQ) a la URL SWF integrable mayores (por ejemplo http://www.youtube.com/v/QmVvgSfdmJQ). Este problema de versión también explica por qué la demo producía HTML diferente del suyo.

Por lo tanto, tiene algunos problemas de versión además de todo lo demás.

+0

Buena llamada, desafortunadamente, ya lo intenté. No dados. No estoy usando la misma clase en el video de youtube rel. También eliminó la primera llamada de Fancybox y no cambia nada. Puede ver el sitio aquí: http://anasmadance.com.s66112.gridserver.com/about/repertoire/ ... haga clic en el primer div grande del título para expandirlo y luego busque "ver el video" – Brian

+0

@Brian : Me equivoqué un poco y agregué una actualización que puede (o no) ser útil. –

+0

Estabas en ... ¡me salvaste amigo! : D – Brian

1

Parece que el código podría estar ligeramente desviado

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a[@rel*=fancyvideo]").fancybox({ 
      overlayShow: true, 
      frameWidth:640, 
      frameHeight:360 
     }); 
    }); 
</script> 

http://chadly.net/post/2009/01/29/Lightbox-for-YouTube-Videos.aspx

+0

Desafortunadamente no, el autor ha publicado esto antes de jQuery 1.3 .2 y entonces el código en su publicación es incorrecto. Antes de actualizarlo, el código no funcionó en absoluto, luego obtuve el cuadro modal para que apareciera pero no el video. – Brian

1

uso de esta muestra no se olvide href

<a class="fancybox" href="your path for image or other"> 
    <img src="imagepath"> 
</a> 
2

Comprobar si ha incluido los jquery.fancybox-media.js

<script type="text/javascript" src="jquery.fancybox-media.js?v=1.0.0"></script> 
Cuestiones relacionadas