Страница 1 из 2
Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 16 ноя 2012, 18:41
wierusna
Вот код
Код: Выделить всё
var index:MovieClip = new MovieClip();addChild(index);setChildIndex(index, 0); var loaderContext:LoaderContext = new LoaderContext();loaderContext.checkPolicyFile = true;var avaStage:String;//адрес загружаемой картинки из xmlvar ava:Loader = new Loader();//loader картинки из xml var XMLLoader:URLLoader = new URLLoader();var XMLdata:XML = new XML();XMLLoader.addEventListener(Event.COMPLETE, xmlLoaded)function xmlLoaded(event:Event):void { XMLdata = new XML(event.target.data); mytree.dataProvider = new TreeDataProvider(XMLdata); } XMLLoader.load(new URLRequest("http://mega-tv.do.am/XMLturaga/img.xml")); mytree.addEventListener(ListEvent.ITEM_CLICK, addClick); function addClick (ev:ListEvent) { if (ev.item.src != null) { removeChild(getChildAt(0)); avaStage = (ev.item.src); var pictLdr:Loader = new Loader(); var pictURLReq:URLRequest = new URLRequest(avaStage); pictLdr.load(pictURLReq) as MovieClip; addChild(pictLdr); setChildIndex(pictLdr, 0); pictLdr.addEventListener(MouseEvent.MOUSE_DOWN, startDraging); pictLdr.addEventListener(MouseEvent.MOUSE_UP, stopDraging);} } function startDraging(e:MouseEvent):void{ e.currentTarget.startDrag(); } function stopDraging(e:MouseEvent):void{ e.currentTarget.stopDrag(); }
Изображения добавляет, но они не хотят следовать за мышью. В чем проблема?
Вот демка
http://mega-tv.do.am/XMLturaga/turaga2.swf
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 16 ноя 2012, 20:00
Александр
wierusna
Код: Выделить всё
ReferenceError: Error #1069: Не удалось найти свойство startDrag в flash.display.Loader; отсутствует значение по умолчанию.
Добавить картинку на мувиклип или спрайт.
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 16 ноя 2012, 22:37
wierusna
Спасибо! Получилось.
Не подскажите почему так все работает
http://mega-tv.do.am/XMLturaga/turaga2.swf
А когда заливаю его в ВК, то XML не грузится(
http://vk.com/app3236488
Код вот
Код: Выделить всё
import com.yahoo.astra.fl.controls.treeClasses.*;import flash.net.URLRequest;import flash.display.Loader;import flash.xml.XMLDocument;import fl.events.ListEvent;import flash.display.Sprite;import flash.display.Bitmap;import flash.display.BitmapData;import flash.display.MovieClip; var index:MovieClip = new MovieClip();addChild(index);setChildIndex(index, 0); var loaderContext:LoaderContext = new LoaderContext();loaderContext.checkPolicyFile = true;var avaStage:String;//адрес загружаемой картинки из xmlvar ava:Loader = new Loader();//loader картинки из xml var XMLLoader:URLLoader = new URLLoader();var XMLdata:XML = new XML();XMLLoader.addEventListener(Event.COMPLETE, xmlLoaded)function xmlLoaded(event:Event):void { XMLdata = new XML(event.target.data); mytree.dataProvider = new TreeDataProvider(XMLdata); } XMLLoader.load(new URLRequest("http://mega-tv.do.am/XMLturaga/img.xml")); mytree.addEventListener(ListEvent.ITEM_CLICK, addClick); function addClick (ev:ListEvent) { if (ev.item.src != null) { //removeChild(getChildAt(0)); avaStage = (ev.item.src); var pictLdr:Loader = new Loader(); var pictURLReq:URLRequest = new URLRequest(avaStage); var spr:Sprite=new Sprite() spr.x=300; spr.y=400; addChild(spr) pictLdr.load(pictURLReq) as MovieClip; //addChild(pictLdr); spr.addChild(pictLdr) setChildIndex(spr, 0); spr.addEventListener(MouseEvent.MOUSE_DOWN, startDraging); spr.addEventListener(MouseEvent.MOUSE_UP, stopDraging);} } function startDraging(e:MouseEvent):void{ e.currentTarget.startDrag(); } function stopDraging(e:MouseEvent):void{ e.currentTarget.stopDrag(); }
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 10:16
Александр
wierusna
http://mega-tv.do.am/crossdomain.xml
Код: Выделить всё
<cross-domain-policy><allow-access-from domain="*.vkontakte.ru"/><allow-access-from domain="*.vk.com"/><allow-access-from domain="*.userapi.com"/></cross-domain-policy>
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 14:26
wierusna
Александр писал(а):wierusna
http://mega-tv.do.am/crossdomain.xml
Код: Выделить всё
<cross-domain-policy><allow-access-from domain="*.vkontakte.ru"/><allow-access-from domain="*.vk.com"/><allow-access-from domain="*.userapi.com"/></cross-domain-policy>
Странно, теперь грузится древовидное меню, но не загружаются картинки О_о
Может быть в
Поставить на false?
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 14:35
Alazaur
Напишите перед загрузкой
Код: Выделить всё
Security.loadPolicyFile("http://ваш_сайт.ru/crossdomain.xml");
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 14:59
wierusna
Alazaur писал(а):Напишите перед загрузкой
Код: Выделить всё
Security.loadPolicyFile("http://ваш_сайт.ru/crossdomain.xml");
не помогло
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 15:57
Alazaur
Способ 1:
Код: Выделить всё
Security.loadPolicyFile("http://ваш_сайт.ru/crossdomain.xml");var loader:Loader = new Loader();loader.load(new URLRequest("http://картинка.jpg"));addChild(loader);
Работает как локально, так и на сервере (в данном случае вконтакте).
Способ2:
Код: Выделить всё
var context:LoaderContext = new LoaderContext();context.securityDomain = SecurityDomain.currentDomain;context.applicationDomain = ApplicationDomain.currentDomain;var loader:Loader = new Loader();loader.load(new URLRequest("http://картинка.jpg"), context);addChild(loader);
Работает, только на сервере. При локальном тестировании будет выдавать ошибку.
Оба работают и не раз проверены. Если Вам не помогает, значит проверяйте путь до crossdomain.xml, сам код загрузки или в крайнем случае сервер (н-р: не наложен ли хостером блок на домен вконтакте).
Есть еще третий способ в обход политики безопасности, но это уже другая история)))
Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 17:48
wierusna
Alazaur
1й способ при компиляции выдает такую ошибку, когда нажимаю на картинка 1
Отсутствует активный контекст безопасности.
2й способ тоже не помог
Спасибо за совет! Попробую другой хостинг

Re: Изображение НЕ следует за мышью. startDrag и stopDrag
Добавлено: 17 ноя 2012, 18:10
wierusna
Вот блин! Нашел ошибку))
В XML вместо
Нужно было прописать
Код: Выделить всё
<node label="картинка 1" src="http://mega-tv.do.am/XMLturaga/1.jpg" />
Помогла ошибка при компиляции ///C|/Users/user/Desktop/папка/turaga.swf пытался загрузить file:///C|/Users/user/Desktop/папка/1.jpg.
Спасибо вам огромное!