Скорее всего, это проблема кодировки во время компиляции.Я проверил код, который вы дали, и он работал отлично.Убедитесь, что ваш компилятор интерпретирует ваш файл с правильной кодировкой.
Если вы хотите проверить это, вы можете просто сделать trace('ядене')
, если в журнале консоли Flash вы видите странный символ, это кодировкаво время компиляции.Что касается того, как исправить, я не знаю компилятора достаточно, чтобы указать вам правильное направление.
Это также может быть проблема с кодировкой страницы, на которую вы передаете данные.Если ваш файл Flash скомпилирован в UTF-8, а ваша HTML-страница обслуживается с другой кодировкой, которая может объяснить вашу проблему.В этом случае просто убедитесь, что кодировка html и вашего флэш-файла одинакова.
В крайнем случае, что вы можете сделать, чтобы обойти большую часть ошибки ExternalInterface, это escape
данные на Flashсторона и unescape
это на стороне Javascript.Пример:
Вспышка:
var url:URLRequest = new URLRequest("javascript:allInfo('" + escape("ядене") + "'); void(0);");
flash.net.navigateToURL(url, "_self");
Javascript:
function allInfo(txt) {
alert("Test : " + unescape(txt));
}