JavaScript и SWF-связь - PullRequest
       1

JavaScript и SWF-связь

0 голосов
/ 13 декабря 2011

У меня есть большой интерактивный SWF-файл, и этот файл внедряется в мой HTML с помощью SWFObject. Я могу общаться с SWF с помощью JavaScript, и он отлично работает. Но у него нет предварительного загрузчика, и поскольку файл большой, я хочу показать загрузочное изображение или файл SWF, а когда файл загружен полностью, показать кнопку воспроизведения с помощью JavaScript.

Как понять, загружен ли файл полностью?

Я пробовал кучу решений, но ни одно из них не было успешным. Сначала я попытался создать предварительный загрузчик во флэш-памяти и загрузить свой внешний SWF-файл, а затем отправить сообщение в JavaScript о завершении события с использованием внешнего интерфейса, это сработало, но я больше не мог связываться с основными сценариями ActionScript сценариев с помощью JS.

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

1 Ответ

0 голосов
/ 13 декабря 2011

Я также настоятельно рекомендую вам включить функции воспроизведения / паузы и т. Д. Непосредственно в программу Flash - для этого на самом деле нет необходимости использовать JavaScript!

Но если вам нужно использовать JS, вы можете показать ход загрузки, создав внутренний предварительный загрузчик или загрузив внешний swf в тот же домен приложения (тогда какесли вы не используете JS, вам не нужно беспокоиться о доменах приложений) или используйте SWFBridge для установления двусторонней связи между двумя отдельными SWF-файлами.

Внутренний предварительный загрузчикдовольно аккуратное решение, если вы хотите, чтобы все ваши данные были встроены в один файл - за счет необходимости создавать дополнительные фреймы и думать о том, куда именно поместить экземпляры вашего класса в FLA (вы не можете использовать »Вставить в кадр 1 ").

Загрузка в тот же домен приложения более элегантна, особенно если вы используете Flash IDE в основном для кодирования (а не проектирования) или если у вас все равно есть внешние данные.Кроме того, это хороший способ создания модульных приложений.

SWFBridge действительно хорошо, если у вас есть SWF-файлы ActionScript 2 или устаревшие файлы без напрямую доступного исходного кода - но если все, что вам нужно, это простой прелоадер и немного JavaScript, я, вероятно, не буду использоватьэто в данном случае.

...