2011-07-26 11 views
17

estoy incorporación de capacidades experimentales iframe HTML5 de YouTube en un sitio web mediante el uso de la API de javascript:¿Cómo se establece wmode = opaque con la API de iframe HTML5 de Youtube?

YouTube Player API Reference for <ifram> Embeds

estoy consciente de los problemas z-index que ello conlleva, y el arreglo que implica la adición wmode = opaco (o wmode = transparente) a la URL iframe:

Fixed. My Youtube iframe z-index is ignored and is above a fixed div

Cuando acaba con la API de JavaScript, ¿cómo se configura embed a opaco:

function onYouTubePlayerAPIReady() { 
    var player; 
    player = new YT.Player('player', { 
     width: 1280, 
     height: 720, 
     videoId: 'u1zgFlCw8Aw', 
     // if I try adding wmode: opaque here, it breaks 
     playerVars: { 
      controls: 0, 
      showinfo: 0 , 
      modestbranding: 1 
      // if I try adding wmode: opaque as a playerVar here, it breaks 
     }, 
     events: { 
      'onReady': onPlayerReady, 
      'onPlaybackQualityChange': onPlayerPlaybackQualityChange 
     } 
    }); 
} 

¿Alguna idea?

Respuesta

70

Hmmmm ...

Pues bien, parece que era precipitada en la publicación de la cuestión. Parece que la forma correcta para configurar wmode dentro de la API es:

function onYouTubePlayerAPIReady() { 
    var player; 
    player = new YT.Player('player', { 
     width: 1280, 
     height: 720, 
     videoId: 'u1zgFlCw8Aw', 
     playerVars: { 
      controls: 0, 
      showinfo: 0 , 
      modestbranding: 1, 
      wmode: "opaque" 
     }, 
     events: { 
      'onReady': onPlayerReady, 
      'onPlaybackQualityChange': onPlayerPlaybackQualityChange 
     } 
    }); 
} 

Esperemos que esto ayude a otra persona.

+0

¡Gracias por esta respuesta! – scolja

0

Por lo que puedo decir es el valor predeterminado opaque. Probé cambiando wmode a transparent, opaque y lo eliminé. Cuando no se especificó, se estableció automáticamente en opaque.

No estoy seguro de si este fue siempre el caso, pero definitivamente lo es ahora.

Recuerde también que esto solo se aplica al usar el reproductor Flash. Puede deshabilitar el reproductor HTML 5 para probar esto, que es el valor predeterminado con el 'Disable Youtube™ HTML5 Player' plugin. Luego solo inspeccione el elemento y profundice hasta encontrar la etiqueta EMBED.

Cuestiones relacionadas