2012-02-03 26 views
7

Es posible vincular a una hora específica en un video de YouTube que incluye la sintaxis #t=1m49s.Enlaces a horas específicas en el iframe incrustado de YouTube

¿Es posible tener enlaces en la misma página de la inserción que hacen que el video salte a diferentes momentos en el video?

<a href="">Link to 1 minutes 10 seconds</a> 
<a href="">Link to 3 minutes 4 seconds</a> 
<a href="">Link to 5 minutes 10 seconds</a> 
etc.. 

Respuesta

8

Goran ha publicado la referencia de api. Yo recomendaría revisar eso. Aquí hay un código básico para lo que estás buscando. Me he comentado las partes principales:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>  
<script> 
    //this function gets called when the player is ready  
    function onYouTubePlayerReady (playerId) { 
     ytplayer = document.getElementById("myytplayer"); 
     console.log(ytplayer); 
    } 
    //generic seekTo function taking a player element and seconds as parameters  
    function playerSeekTo(player, seconds) { 
     player.seekTo(seconds); 
    } 
</script> 

<div id="ytapiplayer"> 
    You need Flash player 8+ and JavaScript enabled to view this video. 
</div> 
<br/> 
<a href="#" onclick="playerSeekTo(ytplayer, 70); return false;">Link to 1 minutes 10 seconds</a> 
<a href="#" onclick="playerSeekTo(ytplayer, 90); return false;">Link to 1 minutes 30seconds</a> 
<a href="#" onclick="playerSeekTo(ytplayer, 110); return false;">Link to 1 minutes 50 seconds</a> 

Ahora el js:

var ytplayer; 

$(document).ready(function() { 
    swfobject.embedSWF("//www.youtube.com/e/Py_IndUbcxc?enablejsapi=1&playerapiid=ytplayer &version=3", 
    "ytapiplayer", // where the embedded player ends up 
    "425", // width  
    "356", // height  
    "8", // swf version  
    null, 
    null, { 
     allowScriptAccess: "always" 
    }, { 
     id: "myytplayer" // here is where the id of the element is set 
    }); 

}); 

Here es el violín que creé.

+0

¡Gracias por la ayuda! Sin embargo, parece que no puedo hacer que funcione. ¿Podría quizás proporcionar un Jsfiddle? ¡Gracias! – bookcasey

+1

@bookcasey He actualizado el código en la respuesta original e incluí un violín funcional. Hazme saber si tienes alguna pregunta. – sinemetu1

+1

Aquellos que usan Firefox, el violín no está roto, solo que muestra el video cuando la vista resulta en una ventana separada. – lulalala

2

Aunque no tengo experiencia personal en la ejecución de Javascript con videos de YouTube emdedded, sí sé que YouTube tiene una API de JavaScript para realizar dichas acciones. La función que busca es .seekTo()

http://code.google.com/apis/youtube/js_api_reference.html#seekTo

Con un poco de demostración ingenioso here.

+0

Si desea utilizar el iframe en lugar de incrustar el Insertar Flash, la documentación que se encuentra en https://developers.google. com/youtube/iframe_api_reference – DavGarcia

0

Uso ?start=xyz (segundos)

Por ejemplo:

<iframe src="http://www.youtube.com/embed/vDFuzhnTegc?start=1778" width="420" height="235"></iframe> 
Cuestiones relacionadas