在YT.player中播放视频

问题描述:

我显示了YouTube视频的链接列表。在YT.player中播放视频

document.getElementById('videos').innerHTML += "<div>" 
        + "<a href='#' onclick='showVideo(\"" + videoid + "\"); return false'>" + videotitle + "</a>" + videodescription + "" 
        + "</div>"; 

点击任何链接,并在其div中播放视频。

function showVideo(arg) { 
console.log(arg); 

    var player; 

       player = new YT.Player('response', { 
        videoId: arg, 
        // height: '700', 
        // width: '1000', 
        playerVars: { 
         controls: 1, // 1 is default value 
         autoplay: 1, 
         disablekb: 0, // 0 is the default value 
         enablejsapi: 1, 
         iv_load_policy: 3, 
         modestbranding: 1, 
         showinfo: 0, 
         rel: 0, 
         fs: 0 //Setting this parameter to 0 prevents the fullscreen button from displaying in the player. 
         //The default value is 1, which causes the fullscreen button to display. 
        } 
       }) 
     //   player.destroy() 

} 

我点击从显示的列表选择不同的链接,我期待现有的视频与新的视频所取代,但这种情况不会发生,仍然显示第一视频。 是不是变量播放器再次实例化? 我需要做些什么才能做到这一点?

尝试使用loadVideoById

This function loads and plays the specified video.

语法:

player.loadVideoById(videoId:String, 
        startSeconds:Number, 
        suggestedQuality:String):Void 

这样实现的:

$(".button").on("click", function() { 
     player.loadVideoById("Vw4KVoEVcr0", 0, "default"); 
    }); 

变量player是你new YT.Player(),这段代码将LO将新的videoID = Vw4KVoEVcr0添加到YT.player

参考:

希望这有助于。

+0

是的,它帮助我尝试别的。我用_onYouTubeIframeAPIReady()_与你的代码相同,但在我的函数_showVideo(arg)_我把_player.loadVideoById(arg,0,“default”); _和我得到的错误是_Uncaught TypeError:player.loadVideoById不是功能_ – zen