AS3

2009-04-10 28 views
7

kullanarak jQuery işlevini nasıl çalıştırabilirim HTML sayfamda AS3'ten jQuery işlevi çalıştırmaya çalışıyorum.AS3

Bu benim jQuery işlevidir: Burada

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

HTML sayfasındaki benim flaş dosyasının ayarları şunlardır:

<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" /> 

ve nihayet ... burada benim, AS3 komut dosyasıdır. swf dosyası: önceden

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

Teşekkür zaman ayırdığınız için bakmak ve herhangi bir yardım kitlesel takdir edilmektedir.

Nazik Regards.Tom

cevap

6

Bunun yerine ExternalInterface kullanabilirsiniz:

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

Dokümantasyon: http://livedocs.adobe.com/flex/3/langref/flash/external/ExternalInterface.html

+1

Hızlı yanıt için teşekkür ederim, gösterme uyarısı ("test") gösterilmesine rağmen, çalışmam için işlevimi alamıyorum. HTML sayfamın üst kısmındaki fonksiyona "loadImage" denir. Ayrıca bu işleve bir değişken geçiriyorum. if (ExternalInterface.available) { ExternalInterface.call ('loadImage (1);'); } – Tisch

+0

endişelenmeyin. Çalıştırdım. Cevabınız için çok teşekkür ederim. Muchos minnettar :) – Tisch

1

son çözüm oldu:

vaka herkes istediği Sadece içeri
function gotoImage2(e:MouseEvent):void 
{ 
    if(ExternalInterface.available) 
    { 
     ExternalInterface.call('function(){ loadImage(2); }'); 
    } 
} 

nasıl bittiğine bakın ...

+0

Neden anonim bir işlev kullanmak yerine doğrudan javascript yöntemini çağırmıyorsunuz? ExternalInterface.call ('loadImage', 2); ' – duTr