Как я могу обновить текст в загруженном SWF-файле с помощью javascript / AS3? - PullRequest
1 голос
/ 01 августа 2009

Мне нужно создать предварительный просмотр во Flash, который покажет пользователю настроенную версию продукта - например, с собственным текстом на сайте. Я не использую Flash нормально, но немного понимаю в ActionScript 3.

Я использую jQuery для встраивания и связи со своим SWF. У меня есть SWF-фильм, которому я передаю начальное значение через Flashvar, и это отображается с пользовательским текстом в моем фильме. (Я создаю текстовое поле в фильме с Actionscript 3)

Как я могу затем использовать javascript для последующей отправки обновленных значений для моих Flashvars в фильм - например, когда клиент меняет текст в поле ввода на странице HTML?

Ответы [ 2 ]

2 голосов
/ 01 августа 2009

Вам нужно будет определить свою собственную функцию для изменения текстового поля и сделать ее доступной для вашего javascript, используя ExternalInterface.

Это выглядит примерно так:

class MyClass {

  static function main() {      
    if (flash.external.ExternalInterface.available) {
      flash.external.ExternalInterface.addCallback("updateText", updateText);
    }

    static function updateText(txt) {
      // Whatever you want
    }
  }    

}
0 голосов
/ 03 августа 2009

Существует опция ExternalInterface , как показано выше.

Если ваши требования немного сложнее, вы можете использовать предоставленный Adobe Flex Ajax Bridge . Вам также понадобится Flex SDK (см. О Flex Ajax Bridge ). Мост может упростить вещи, если вы хотите управлять большей частью поведения SWF из JavaScript. ExternalInterface более полезен для простых, быстрых одноразовых вызовов функций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...