2010-12-04 7 views

답변

0

ExternalInterface를 사용하여 JavaScript-Method를 호출 할 수 있습니다. 반드시 , 당신은 당신의 자바 스크립트 파일을 포함했다 또는 당신이 할 수 보이는 같은, 당신의 index.template.html 파일 내부에 자바 스크립트 함수를 작성했습니다 :

<script type="text/javascript" src="./lib/file.js"></script> 
<script type="text/javascript"> 
    function doSomtething() { 
    alert("Something is done"); 
    } 
</script> 

함수를 호출하려면 "해봐요 당신은 몇 가지 매개 변수를 보내려면

ExternalInterface.call("doSomething"); 

을하고 자바 스크립트의 기능은 다음과 같이 정의된다 :() "다음과 같은 코드를 사용하여이 작업을 수행 할 수

<script type="text/javascript"> 
    function doSomtething(param1, param2) { 
    alert("Something is done"); 
    } 
</script> 

ExternalInterface.call("doSomething", param1, param2); 

이 방법으로 문제가 해결되지 않으면 html 파일의 JavaScript 기능을 확인하십시오.

ExternalInterface.call('obj.method_name',.args) 

당신이 ".args"대신 "인수"를 보내시겠습니까 :

다음과 같은 성명을 게시 한?

이 질문이 도움이되기를 바랍니다.

+0

음, 내 질문이 달라졌습니다. 어쨌든, 나는 혼자서 해결했다. – Luca

+0

오, 오, 미안하지만, 당신이 그 문제를 해결했다고 생각합니다. – EvilMM

2

범위의 문제였습니다. js 클래스 외부에서 swf 객체를 인스턴스화해야합니다. 그런 다음 ExternalInterface.call()에서 참조 할 수 있습니다.

window.addEvent('domready',function(){ 

    swf = new Swiff('../files/swf/italy.swf',{ 
     id:'italy', 
     container:'italy-flash', 
     width:280, 
     height:323, 
     params:{ 
      bgcolor:'#ffffff', 
      wmode:'opaque', 
      allowScriptAccess:'always' 
     } 
    }); 

    rm = new RelessersManager('regions'); 

}); 

이제 swf에서 rm 메서드를 호출 할 수 있습니다. :) (.call('rm.method_name',...params)) 이전에 rm 내부에 swf를 만들었으므로 sw32에서 rm을 참조 할 방법이 없었습니다.

+1

자신의 대답을 수락했는지 확인하십시오. 맞아. :-) – Orbling

관련 문제