Flash JavaScript (Ajax) не работает в IE? - PullRequest
1 голос
/ 18 мая 2011


Я создал приложение Flash, которое добавляет контент на страницу, используя JavaScript (Ajax).Но как ни странно, он не работает в IE (7 или 8).Он отлично работает в Chrome и FireFox.
Функция JavaScript (вероятно) не является проблемой, потому что когда я вставляю javascript:functionName(id); в моем браузере, она работает.
Во Flash я использую JavaScript на кнопке с кнопкойследующий код:

getURL("javascript:functionName(id);");

Полагаю, это хороший способ его использования?

Но, как ни странно, во Flash ничего не работает, даже если я заменю код на alert('hello my friend'); (может, он не мой друг?).

Может кто-нибудь помочь мне и сказать, что может быть причиной проблемы?
Заранее спасибо!

1 Ответ

3 голосов
/ 18 мая 2011

Вы должны использовать AS ExternalInterface для связи с JS, посмотрите на это: http://www.nelsond8.com/?p=515#more (здесь я использую встроенный метод swfobject swfobject.getObjectById , если вы не используете swfObject, замените эту строку на document.getElementById )

Если вы используете AS2, вы можете сделать что-то вроде этого:

<script type="text/javascript">
function myFunction(id)
{
alert('hello my friend');       
return 'hello my friend';

}
</script>

AS2:

import flash.external.*;

btn.onPress = function() 
    {
        var jsReply:String = String(ExternalInterface.call("myFunction", "01"));

        getURL("jsReply");

        trace(jsReply);
    }

А вот справочная страница externalInterface для AS2: http://flash -reference.icod.de /

...