Как я могу запустить функцию jQuery, используя AS3 - PullRequest
7 голосов
/ 11 апреля 2009

Я пытаюсь запустить функцию jQuery на моей HTML-странице из AS3.

Это моя функция 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');
}

Заранее благодарим за то, что нашли время посмотреть, и любая помощь очень ценится.

С наилучшими пожеланиями. Том

Ответы [ 2 ]

6 голосов
/ 11 апреля 2009

Вы можете использовать ExternalInterface вместо:

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

Документация: http://livedocs.adobe.com/flex/3/langref/flash/external/ExternalInterface.html

1 голос
/ 11 апреля 2009

Окончательное решение было:

function gotoImage2(e:MouseEvent):void 
{
    if(ExternalInterface.available)
    {
        ExternalInterface.call('function(){ loadImage(2); }');
    }
}

На всякий случай, если кто-нибудь захочет увидеть, чем это закончилось ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...