Может ли функция JavaScript определить, какой объект Flash DOM вызывал ее?

Вот проблема: У меня есть Flash-фильм, который будет встроен в страницу с использованием неизвестного идентификатора DOM, который я хочу идентифицировать / сохранить для обратного вызова в функции JS.

Мой идеальный пользовательский поток был бы следующим:

  1. Пользователь нажимает кнопку во Flash.
  2. Flash приостанавливает любую анимацию / видео / звуки / и т. д.
  3. Flash вызывает внедренную функцию JS для отображения перекрывающего страницу оверлея.
  4. Когда пользователь закрывает оверлей, вызывается метод обратного вызова во Flash вызывается объект.
  5. Flash возобновляет воспроизведение.

Проблема в том, что когда AS3 использует метод ExternalInterface.call ("functionName", args ...), похоже, не запускается событие DOM, и таким образом, невозможно определить, какой объект вызвал функцию JS, поэтому наличие функции «registerMe ()», похоже, не работает. В основном,

[ОБНОВЛЕНИЕ] Оказывается, SWF может определить свой собственный URL-адрес с помощью loaderInfo.url. Я передаю эту информацию сценарию, запускающему наложение, чтобы ее можно было сохранить для будущего сравнения со всеми объектами DOM application / x-shockwave-flash. Когда совпадение найдено, это вызывающий SWF-файл. Кто-нибудь видит изъян в этой логике? (Я не так хорошо разбираюсь в JS, как в AS)

10
задан Joshua Sullivan 22 May 2011 в 01:07
поделиться