Я пытаюсь получить текущий URL браузера. Я уже попробовал Внешним вызовом, и он не работал. И с loaderInfo.url я получаю текущий URL SWF.
Существует пара способов решения этой проблемы, однако все они включают использование JavaScript для запроса браузера напрямую.
Мой предпочтительный способ решить эту проблему, чтобы обеспечить URL через свойство Flashvar, направлять от кода в области встраивания (лично, я бы рекомендовал использовать SWFObject , чтобы сделать это проще); Не забудьте, что вам нужно будет URL-адрес кодировать его, чтобы избежать проблем разметки.
var flashvars = {
browserURL: escape(location.href)
};
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf", flashvars);
Теперь вы сможете получить доступ к URL-адресу браузера через объект LoaderInfo:
trace(stage.loaderInfo.parameters["browserURL"]);
Обратите внимание, что это будет работать только, если у вас есть управление сгенерированным HTML для вашего SWF-файла - если пользователи будут схватить SWF и писать Их собственный встроен HTML, он не собирается работать.
Если у вас нет контроля над флэш-встроенным HTML, вам нужно будет получить Flash, чтобы запросить браузер во время выполнения, используя класс ExternalInterface; Другие люди предложили использовать «window.location.href.tostring», однако это может оказаться проблематичным в IE6, я нахожу следующие работы надежно во всех браузерах
const browserURL : String = ExternalInterface.call("eval", "window.location.href");
Обратите внимание, что для этого на работе вам нужно будет предоставить JavaScript доступ к вашему флэш-фильму, это сделано, опять же, через HTML-код и ProselctcessAccess MARAG
Дайте фору:
import flash.external.ExternalInterface;
var url:String = ExternalInterface.call("window.location.href.toString");
if (url) textfield.text = url;
должно получиться.
Я думаю, что его поставит использовать внешний интерфейс AN, сделать его с JavaScript Window.location
Я бы попробовал пропустить необходимую информацию в виде вспышки. Не лучший из ящиков я знаю, но он будет работать.