У меня есть функция calc в java-скрипте, которая принимает три целочисленных параметра, Ниже приведен код AS3
import flash.external.ExternalInterface;
var para:Array = new Array();
send_btn.addEventListener(MouseEvent.CLICK, clickListener);
function clickListener(eventObj:Object ):void {
para.push(mean.text);
para.push(std.text);
para.push(points.text);
trace("click > " + para);
ExternalInterface.call("calc",para );
}
Это правильный способ сделать это и как мне вернуть 3 аргумента из javascript и отобразить их во флэш-памяти?
это все еще проблема? в противном случае примите ответ, чтобы вопрос был удален из списка «неотвеченных». Благодарность



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Кроме того, вам необходимо зарегистрировать свою функцию AS, чтобы она была доступна для контейнера:
ExternalInterface.addCallback("callFlash", myASFunction);
Затем из вашего контейнера (JS) вы вызываете функцию AS и передаете ей любые параметры, которые хотите.
<script language = "JavaScript">
flashObject.callFlash(param1, param2, param3);
</script>
...
<object id = "flashObject"...>
...
<embed name = "flashObject".../>
</object>
Наконец, в AS3 вы пишете функцию, которая будет выполняться, когда контейнер «обратится»:
function myASFunction(param1:String,param2:String,param3:String):void {
trace("\n Received call from JS: " + param1 + param2 + param3);
}
Вы могли просто отредактировать свой предыдущий вопрос: stackoverflow.com/questions/435763/…