2012-05-18 258 views
1

我目前有以下代码可以在页面上播放YouTube视频。在视频播完后摆脱嵌入式YouTube播放器

<div id="player"></div> 
<script> 
//Load player api asynchronously. 
var tag = document.createElement('script'); 
tag.src = "http://www.youtube.com/player_api"; 
var firstScriptTag = document.getElementsByTagName('script')[0]; 
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 
var player; 
function onYouTubePlayerAPIReady() { 
    player = new YT.Player('player', { 
     height: '390', 
     width: '640', 
     videoId: 'JW5meKfy3fY', 
     playerVars: { 'autoplay': 1, 'rel': 0, 'showinfo': 0, 'egm': 0, 'showsearch': 0, }, 
     events: { 
     'onReady': onPlayerReady, 
     'onStateChange': onPlayerStateChange 
     } 
    }); 
} 
function onPlayerReady(event) { 
    event.target.playVideo(); 
} 
function onPlayerStateChange(event) { 
    //When the video has ended 
    if (event.data == YT.PlayerState.ENDED) { 
     //Get rid of the player 
    } 
} 

的onPlayerStateChange功能发现当玩家完成播放视频。 那我该如何让这个玩家消失?

+2

只需用ID “玩家” 删除元素。 –

回答

1

也许像

function onPlayerStateChange(event,element) { 
    //When the video has ended 
    if (event.data == YT.PlayerState.ENDED) { 
     //Get rid of the player 
     element.style.display = "none"; 
    } 
} 
4

如果您使用IFRAME API:

function onPlayerStateChange(event) { 
    //When the video has ended 
    if (event.data == YT.PlayerState.ENDED) { 
     //Get rid of the player 
     event.target.destroy(); 
    } 
} 
+0

以下是API的文档:https://developers.google.com/youtube/iframe_api_reference#Accessing_and_Modifying_DOM_Nodes – Mathias

相关问题