Youtube API - 相当于onTime

时间:2013-05-22 09:17:44

标签: javascript-events youtube-api ontime

我在youTube API中寻找OnTime(jwplayer)中的类似事件。 更准确地说,使用jwplayer,我使用了以下适合youtube播放器的功能:

//Fonction destinée à afficher des notes en fonction de la progression des vidéos lues
    jwplayer("mediaplayer").onTime(function(event) 
            {
                switch (jwplayer().getPlaylistItem().title)  
                {  
                   case 'Séquence 1':
                        if (event.position >=42 && event.position <=70 )
                          {
                            setText("CANGUILHEM, Georges, <i>Le normal et le pathologique</i>, Paris, PUF, 1972.");
                          }
                        else if (event.position >=1257 && event.position <=1268 )
                          {
                            setText("CANGUILHEM, Georges, <i>Essai sur quelques problèmes concernant le normal et le pathologique</i>, thèse de doctorat en médecine, 1943.");
                          }
                        else {setText("Retrouvez ici des notes destinées à préciser un point particulier de l'intervention.")};
                        break;  
                   case 'Séquence 2': 
                        {setText("Retrouvez ici des notes destinées à préciser un point particulier de l'intervention.")};
                        break;  
                    default:  
                      setText("Retrouvez ici des notes destinées à préciser un point particulier de l'intervention.");  
                      break;  
                } 


            });



    function setText(text)
    {
        document.getElementById("message").innerHTML = text;
    }

有没有人知道我怎么能适应它?

非常感谢你。

BM 抱歉我的英文不好; - )

2 个答案:

答案 0 :(得分:1)

使用javascript setInterval以指定的时间间隔执行函数。

function onTime(){
    console.log("executing at specified interval")
};

window.setInterval(onTime, 3000);

http://www.w3schools.com/jsref/met_win_setinterval.asp

在这个函数中,为了模仿jwplayer onTime函数,你可能需要在执行自定义代码之前检查视频是否正在播放。也许是这样的:

function onTime(){
    var player_state = player.getPlayerState();
    if(player_state == 1){
        var player_position = player.getCurrentTime()
        console.log("the video is playing!", player_position)
    }
};

答案 1 :(得分:0)

你为什么不用这个:player.getDuration();你可以在这里找到文件:

https://developers.google.com/youtube/js_api_reference#Retrieving_video_information

类似的东西:

var time = player.getDuration();
if (time == "le temps que tu veux") {
    // ton code ici...
}

希望它会有所帮助...