Помощь с кросс-доменными переменными Flash - PullRequest
2 голосов
/ 10 ноября 2010

У меня есть два флэш-фильма fl_base и fl_top. fl_base содержит ActionScript, который извлекает строковую переменную с сервера и анализирует ее, чтобы определить меню навигации сайта (заголовки, подзаголовки и ссылки, на которые должен указывать каждый из этих элементов навигации, как показано ниже).

Menu 1
--Sub Menu 1.1
--Sub Menu 1.2
Menu 2
-- Sub Menu 2.1
-- Sub Menu 2.2

fl_base determines the order of the menus and submenus as well as the links

fl_top содержит графические ресурсы навигации (кнопки, фон и т. Д.) И отображает фактический пользовательский интерфейс.

Я столкнулся с проблемой, из-за которой ссылки (getURL) не будут работать, если вышеупомянутая строковая переменная получена из другого домена. Таким образом, если fl_base и fl_top находятся в example.com и переменная извлекается из test.example.com , тогда fl_top при отображении пользовательского интерфейса (меню , кнопки, цвета) не позволит пользователю перейти по ссылке. Должен отметить, что getURL находится в фильме fl_top.

У нас есть crossdomain.xml, который позволяет междоменный доступ между флэш-фильмами.

Может ли кто-нибудь объяснить мне, почему это не работает, и если есть решение, если не считать переписывания флэш-фильмов (которое было решено не разрешать вышестоящим)

UPDATE

Следует также упомянуть, что я использую SWFObject 2.2 для загрузки fl_base и что fl_top вызывается через loadMovie из fl_base

1 Ответ

2 голосов
/ 10 ноября 2010

Вам нужно установить allowScriptAccess при встраивании, чтобы позволить swf из другого домена делать getURL(), , это actionScript 3 docs , но я думаю, что это относится и к actionscript 2.

...