Давайте скомпилируем эти ответы вместе для AS2 и AS3, используя инъекцию JS И ExternalInterface (оба способа работают на обоих языках)
AS2:
// to use javascript injection in a url request
getURL("javascript:displayPost(" + postId + "," + feedId +");", "_self");
// to use the external interface
import flash.external.ExternalInterface;
ExternalInterface.call("displayPost",postId,feedId);
AS3:
// to use javascript injection in a url request
navigateToURL(new URLRequest("javascript:displayPost(" + postId + "," + feedId +");"), "_self");
// to use the external interface
import flash.external.ExternalInterface;
ExternalInterface.call("displayPost",postId,feedId);
Обратите внимание, что в AS2 и AS3 метод ExternalInterface точно такой же (ExternalInterface был введен в Flash 8 для AS2). И в AS2, и в AS3 метод внедрения javascript одинаков, за исключением того, что он является navigateToURL вместо getURL, а строка URL-адреса заключена в новый URLRequest (), поскольку для него требуется объект URLRequest. Также при использовании внедрения javascript хорошей практикой является установка целевого окна на «_self», чтобы не открывать новую вкладку или окно.