2011-01-26 4 views
1

내 자바 스크립트 :유튜브 자바 스크립트 API되고 onStateChange 이벤트 문제

function onYouTubePlayerReady() 
{ 
    playerObj = document.getElementById("player_embed"); 
    playerObj.addEventListener("onStateChange", test); 

    // Make sure the document is loaded before any DOM-manipulation 
    $(document).ready(function() { 

     // Update player information every 500ms 
     setInterval(updatePlayerInfo, 500); 

    }); 
} 

function test(newState) 
{ 
    alert(newState); 
} 

내 동영상이 제대로로드와 내 자바 스크립트를 통해 미세 제어 할 수 있습니다. 그러나 onStateChange 이벤트는 결코 실행되지 않습니다. 내가 비디오를 재생/정지/일시 중지하고있을 때 경고음이 나오지 않습니다. 솔루션/유사 문제가있는 사람은 누구입니까?

답변

4

addEventListener에 함수 이름을 문자열로 전달해야합니다.

playerObj.addEventListener("onStateChange", "test"); 
+0

이 보이는 playerId을 통과 onYouTubePlayerReady 내부 함수를 작성, 동일합니다. 감사. –

0

이 형식은 JQuery와에 대한하지만 논리는 내가 RTFM 할 필요가 같은

$(document).ready(function() {    
    onYouTubePlayerReady = function(playerId) { 
     eventHandler=function(state){onStateChangeID(state,playerId);} 
     playerObj = document.getElementById("player_embed"); 
     playerObj.addEventListener('onStateChange','eventHandler',false); 
    } 
    onStateChangeID=function(newState,playerId) { 
     console.log("onStateChange: ("+playerId+") " + newState); 
    } 
});