Вызов функций Javascript из flash - PullRequest
0 голосов
/ 06 июля 2011

мне нужна помощь в вызове javascript-функции из flash, я встроил flash с помощью swfobject, вот мой javascript, чтобы встроить его

<script type="text/javascript">
    swfobject.registerObject("myFlashContent", "9.0.0", "expressInstall.swf");
</script>

Вот мой HTML, который используется для показа вспышки

<div class="flash">
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="258" id="myFlashContent">
        <param name="movie" value="btnDemo.swf" />
        <param name="allowscriptaccess" value="always" />
        <!--[if !IE]>-->
            <object type="application/x-shockwave-flash" data="btnDemo.swf" width="258">
        <!--<![endif]-->
        <a href="http://www.adobe.com/go/getflashplayer">
            <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
        </a>
        <!--[if !IE]>-->
            </object>
        <!--<![endif]-->
    </object>
</div>

И у меня во флэш-памяти должно появиться всплывающее сообщение

getURL("javascript:alert('hello')");

Однако ничего из этого не работает.

У кого-нибудь есть идеи, почему это не работает?

1 Ответ

2 голосов
/ 06 июля 2011

Вы действительно должны использовать ExternalInterface для выполнения вызовов JavaScript.Использование выглядит следующим образом:

import flash.external.ExternalInterface;
if(ExternalInterface.available) ExternalInterface.call('alert','hello');

Использование теста доступности предотвращает появление кода ошибки при запуске в IDE.

Кроме того, в вашем примере вы ориентируетесь на FP9, поэтому ваш коддолжен быть AS3?AS3 не имеет getURL() метода.

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