![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 51
|
Привет всем!
Возникла несложная и абсолютно понятная задачка - загрузить внешнюю картинку во флешку (получить её Bitmap или BitmapData). Что может быть проще? Однако, не забываем про магию...) Собсна есть простой код: var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event):void { log('point 1'); var img:Bitmap = e.target.content as Bitmap; log('point 2'); }); loader.load( new URLRequest('myImage.jpg') ); В обычном флешПлеере: всё ОК В браузере (ФФ, хром и др): point 1 выполнился, а point 2 уже не выполняется... То есть на строке e.target.content as Bitmap скрипт останавливается (без каких либо эксепшенов и предупреждений даже в дебаг-версии плеера). Сама картинка загружается нормально, так как если после загрузки прописать просто addChild(loader), то она успешно добавляется на сцену. Варианты var img:Bitmap = Bitmap(e.target.content); или var img:Bitmap = Bitmap(loader.content); также не срабатывают. Вот в этом и заключается магия. Заранее спасибо откликнувшимся! ================================================================================ ВОПРОС РЕШЁН ================================================================================ Итак, для тех, кто работает с несколькими доменами и загрузкой файлов (в частности изображений, так как для получения loader.content нужно разрешение безопасности). Подробнее ». Для начала не забудьте создать crossdomain.xml и положить его куда надо (что это и зачем читать в гугле) Сам код крайне прост: var loader:Loader = new Loader(); var lc:LoaderContext = new LoaderContext(true); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event):void { var img:Bitmap = e.target.content as Bitmap; }); loader.load( new URLRequest('myImage.jpg'), lc ); Также не забудьте скачать дебагВерсию плеера: http://www.adobe.com/support/flashplayer/downloads.html И почитать немного тут: http://help.adobe.com/ru_RU/AS3LCR/F...erContext.html Последний раз редактировалось ExtendedPlay; 23.07.2010 в 22:24. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Это не магия, а политика безопасности плеера.
|
|
|||||
|
Регистрация: Nov 2007
Сообщений: 51
|
да, как выяснилось с помощью дебагПлеера, это именно безопасность - Нарушение изолированной среды.
просто сбивает с толку что addChild(loader) срабатывает...) |
|
|||||
|
.
|
картинки можно без кроссдоменника использовать.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 02:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|