2012-04-13 15 views
5

Safari en iOS tiene una política que permite reproducir medios solo cuando la ejecución actual de javascript comienza con una acción del usuario, generalmente un evento de clic.Lanzamiento de un reproductor iframe de YouTube a través de javascript (externo) en iOS

Sin embargo, cuando hay que adjuntar un controlador a un botón que dispara someYoutubePlayer.playVideo() y el usuario clic en este botón esto es lo que realmente sucede:

  1. un evento click se dispara en la ventana principal de la página
  2. el método playVideo dispara un postMessage en el youtube <iframe />
  3. dentro de la iframe un evento message se dispara
  4. manejador de los eventos message dispara domVideo.play()la que se producirá un error, ya que el evento actual ya no es click, pero message, porque estamos en el iframe ventana interior.

¿Alguien sabe cómo superar esto y activar la reproducción desde un evento de clic externo?

+0

¿Ya ha encontrado una solución? Esto es tan frustrante: \ – iMoses

Respuesta

0

¿Por qué no solo carga el video desde su url, en lugar de en un iFrame? Esto reducirá la carga de tu aplicación y la fuga será de un mínimo.

por ejemplohttp://www.youtube.com/watch?v= ....

Cuestiones relacionadas