2012-11-07 3 views

답변

0

AS3 플레이어를 사용하는 경우에도 자바 스크립트 핸들러를 등록 할 수 있습니다. 플레이어를로드 할 때 URL에 대한 매개 변수로

을 추가하면됩니다.

function onytplayerStateChange(newState) { 
    if (newState===YT.PlayerState.ENDED) { 
     // do redirect here 
    } 
} 

편집 : 당신이 한 번

당신은 AS3 플레이어에 등록 된 자바 스크립트 처리기를 가지고 한 후에는 다음 플레이어의 상태 변화 (특히 종료 된 상태)에 자바 스크립트 리스너를 추가 할 수 있습니다 자바 스크립트 리스너가 준비되면, 어떤 상태 변경에서도이 자바 스크립트 함수를 호출 할 actionscript 리스너를 설정할 수 있습니다. 뭔가, 아마도 (안된) :

// 'loader' below is the youtube actionscript loader object 

function onLoaderInit(event:Event):void { 
    addChild(loader); 
    loader.content.addEventListener("onStateChange", onPlayerStateChange); 
} 

function onPlayerStateChange(event:Event):void { 
    // Event.data contains the event parameter, which is the new player state 
// make sure ExternalInterface is imported 
    ExternalInterface.call("onytplayerStateChange()", Object(event).data); // calls the javascript function 

} 
+0

나는 자바 스크립트가 어떻게 작동하는지 이해하지 못한다. 내 임베드 코드에'enablejsapi = 1'을 추가했습니다. 그런 다음 자바 스크립트에 해당 기능을 추가하고 (간단한 경고 팝업과 함께) 아무 일도 일어나지 않았습니다. 이 두 개의 작은 텍스트를 추가하는 것 외에 다른 작업이 필요합니까? –

+0

예 ...이 수신기 기능에 바인딩해야합니다. 퍼가기를 설정하는 방법에 따라 여러 가지 다른 방법이 있습니다. 직접 액션 스크립트를 코딩하고 있습니까? 그렇다면 위의 javascript 함수에 stateChange 이벤트를 바인딩 할 수있는 init 함수가 있어야합니다. 빠르고 (예 : 경고 ... 테스트되지 않은) 예를 보려면 내 편집을 참조하십시오. – jlmcdonald

관련 문제