2012-05-18 4 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 
    } 
} 

플레이어는 동영상 재생이 완료되면시 onPlayerReady 기능을 알아 낸다. 어떻게하면이 플레이어를 사라지게 할 수 있습니까?

+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

관련 문제