Загрузка внешнего SWF-файлаFlash Player 9 и более поздних версий, Adobe AIR 1.0 и более поздних версий В ActionScript 3.0 SWF-файлы загружаются с помощью класса Loader. Чтобы загрузить внешний SWF-файл, код ActionScript должен выполнить четыре действия:
В итоге код выглядит следующим образом: var request:URLRequest = new URLRequest("http://www.[yourdomain].com/externalSwf.swf");
var loader:Loader = new Loader()
loader.load(request);
addChild(loader);
Этот же код можно использовать для загрузки графических файлов, например изображений в формате JPEG, GIF или PNG. Для этого нужно указать URL-адрес изображения, а не SWF-файла. В отличие от изображения, SWF-файл может содержать ActionScript. Таким образом, несмотря на сходство процессов загрузки SWF-файла и изображения, при загрузке внешнего SWF-файла оба SWF-файла, загружаемый и загружающий, должны находиться в одной изолированной программной среде, если SWF воспроизводится в Flash Player или AIR и для работы с внешним SWF-файлом планируется использовать ActionScript. Кроме того, если внешний SWF-файл содержит классы из того же пространства имен, что и классы в загружающем SWF-файле, возможно, потребуется создать новый домен приложения для загружаемого SWF-файла, чтобы предотвратить конфликты пространства имен. Дополнительные сведения по безопасности и рекомендации по домену программы см. в разделах «Работа с доменами приложений» и «Загрузка содержимого». После успешной загрузки внешний SWF-файл можно получить через свойство Loader.content. Если внешний SWF-файл опубликован для ActionScript 3.0, это будет фрагмент ролика или спрайт в зависимости от того, какой класс он расширяет. Особенности загрузки SWF-файлов предыдущих версийЕсли внешний SWF-файл опубликован с помощью одной из предшествующих версий ActionScript, следует учитывать важные ограничения. В отличие от SWF-файла версии ActionScript 3.0, выполняемого в среде AVM2 (ActionScript Virtual Machine 2), SWF-файл, опубликованный для ActionScript 1.0 или 2.0, выполняется в среде AVM1 (ActionScript Virtual Machine 1). Между загрузкой SWF-файла ActionScript 1.0 или 2.0 в SWF-файл ActionScript 3.0 по сравнению с загрузкой SWF-файла ActionScript 3.0 имеются важные различия. Проигрыватель Flash Player обеспечивает полную обратную совместимость с ранее опубликованным содержимым. Любое содержимое, работающее в предыдущих версиях Flash Player, работает и в версиях Flash Player, поддерживающих ActionScript 3.0. Тем не менее, существует ряд ограничений.
В следующих таблицах показаны ограничения предыдущих версий проигрывателя Flash Player в отношении загрузки более нового содержимого и выполнения программного кода, а также ограничения для взаимодействия между сценариями в SWF-файлах, написанных в различных версиях ActionScript.
В следующей таблице «Поддерживаемые функции» относится к содержимому, выполняемому в проигрывателях Flash Player 9 или более поздней версии. Содержимое, выполняемое в проигрывателе Adobe Flash Player 8 или более ранней версии, может быть загружено, просмотрено и выполнено, а также использовано при вызове из других сценариев только в ActionScript 1.0 и 2.0.
|
|