2013-02-12 3 views
0

Я хочу знать, как передать имя узла XML функции AS3 в другом файле. Например, у меня есть Flash Movie, который содержит кнопку, которая после нажатия передает нужное имя узла XML во внешний AS3-файл, который затем использует его для доступа ко всему содержимому в элементе имени узла XML.Flash - Как динамически передать имя узла XML во внешнюю функцию?

+0

Не могли бы вы быть любезными и предоставить дополнительную информацию. Запускает внешний SWF в отдельном экземпляре Flash Player или загружает его в основной Flash-фильм? –

ответ

0

«... передает требуемое имя узла XML во внешний файл AS3». может означать ряд вещей, которые вам нужно будет уточнить, чтобы получить правильный ответ.

ли файл AS3 ...

  • другой класс, который вы инстанцировании в коде документа?
  • еще один swf, загруженный внутри вашего текущего SWF-файла?
  • другой внешний swf, запущенный внутри другого экземпляра Flash Player?
  • a входит .as файл?

Я постараюсь ответить на этот вопрос наилучшим образом.

Предположим, что функция, которая бежала в месте А, имеет доступ к XML файла Z. Функция B (местоположение которого будет оставаться безымянным) также имеет доступ к XML файла Z. Ваш запрос как передать ссылку X в Z от A до B.

Я также предполагаю, что способ, которым вы выбираете передавать информацию от A до B, не уместен (поскольку это полностью зависит от перечисленных выше сценариев, которые могут повлиять на это).

См. How to Traverse XML structures.

На этом этапе вы можете передать строковое представление пути (например, "order.book[0].title[0]") на B. Из B вы можете потянуть узел, используя строку с XPath. AS3, являющийся ECMAScript, не имеет этого изначально, но его можно легко импортировать через xpath-as3.

Извините, что так расплывчато, но без дополнительной информации это лучшее, что я могу предложить.


Dd Daym: Вы удалили свой вопрос так же, как я собирался ответить (AS3 Reset Position of Droptarget). К сожалению, StackOverlow не предлагает PM, поэтому вместо того, чтобы сбросить мои 30 минут усилий, here's your solution.