2009-04-10 4 views
7

AS3의 HTML 페이지에서 jQuery 함수를 실행하려고합니다.AS3을 사용하여 jQuery 함수를 실행하는 방법

이 내 jQuery를 기능입니다 : 여기

function loadImage(imageNumber) 
    { 
    imageURL = '<img src="images/image' + imageNumber + '.jpg">'; 
    $("#imageBox").html(imageURL); 
    } 

는 HTML 페이지 내 플래시 파일의 설정은 다음과 같습니다

<param name="allowScriptAccess" value="always" /> 
<param name="bgcolor" value="#ffffff" />  
<embed src="links.swf" quality="high" bgcolor="#ffffff" width="320" height="242" name="links" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" /> 

그리고 마지막으로 ... 여기 내에서 AS3 스크립트입니다. swf 파일 :

function gotoImage1(e:MouseEvent):void { 
    var jscommand:String = "loadImage(1);" 
    var link:URLRequest = new URLRequest("javascript:" + jscommand + ""); 
    navigateToURL(link, '_self'); 
} 

미리 보시고 시간을내어 주셔서 감사 드리며 대단히 감사합니다.

친절한 Regards.Tom는

답변

6

대신 ExternalInterface를 사용할 수 있습니다

if (ExternalInterface.available) { 
    ExternalInterface.call('function(){ alert("test"); }'); 
} 

문서 : http://livedocs.adobe.com/flex/3/langref/flash/external/ExternalInterface.html

+1

빠른 응답을 보내 주셔서 감사합니다. 표시 할 경고 ("테스트")를 받았지만 실행 기능을 가져올 수 없습니다. 내 HTML 페이지 맨 위에있는 함수를 "loadImage"라고합니다. 또한이 함수에 변수를 전달합니다. if (ExternalInterface.available) { ExternalInterface.call ('loadImage (1);'); } – Tisch

+0

걱정할 필요가 없습니다. ive가 작동하도록했습니다. 대답 해 주셔서 대단히 감사합니다. Muchos 감사 : – Tisch

1

최종 해결책이었다

경우 누군가가 원하는 단지에
function gotoImage2(e:MouseEvent):void 
{ 
    if(ExternalInterface.available) 
    { 
     ExternalInterface.call('function(){ loadImage(2); }'); 
    } 
} 

그것이 어떻게 끝났는지보십시오 ...

+0

왜 당신은 직접 익명 함수를 사용하는 대신 자바 스크립트 메서드를 호출하지? 'ExternalInterface.call ('loadImage', 2);' – duTr

관련 문제