PDA

Просмотр полной версии : xml + флеш. клип помещённый в другой клип. ас не работает.


DeZQ
10.11.2008, 13:09
привет. помогите пожалуйста. бьюсь с этим второй день. есть клип "digital" (галерея) ас в первом кадре

myPhoto = new XML();
myPhoto.ignoreWhite = true;
myPhoto.onLoad = function (success)
{
numimages = this.firstChild.childNodes.length;
spacing = 70;
for (i = 0; i < numimages; i++)
{
this.picHolder = this.firstChild.childNodes[i];
this.thumbHolder = _root.thumbnails.createEmptyMovieClip("thumbnail" + i, i);
this.thumbHolder._x = i * spacing;
this.thumbLoader = this.thumbHolder.createEmptyMovieClip("thumbnail_image", 0);
this.thumbLoader.loadMovie(this.picHolder.attributes.thmb);
this.thumbHolder.title = this.picHolder.attributes.title;
this.thumbHolder.main = this.picHolder.attributes.main;
this.thumbHolder.onRelease = function ()
{
loader.loadMovie(this.main);
title_txt.text = this.title;
};
} // end of for
};
myPhoto.load("xmlphoto.xml");
если этот клип находится внутри другого клипа то этот ас не работает. весь клип работает,другие скрипты прописанные в нём, срабатывают ,а загрузка данных из xml не происходит.
что я делаю не правильно?..

Mnilionic
10.11.2008, 17:07
... = _root.thumbnails.creatу...
возможно исли исправить на верное обращение к клипу thumbnails - заработает

Wolsh
10.11.2008, 18:34
А зачем тут все эти this? Здесь ведь this это XML... Наверно это работает, но както уж больно нелогично))
А рут конечно да. Это же рут внешнего клипа.

DeZQ
10.11.2008, 22:50
блин.. вот я прогнал:) спасибо всем:) а может ещё кто нить знает ,как к новым клипам "thumbnail" которые будут создаваться эти скритом, прикрутить шейп?..что бы картинки не выскакивали а проявлялись от 0 до 100 % видимости..?..

Wolsh
11.11.2008, 11:06
C loadMovie не получится - это старый нерекомендуемый метод, он не позволяет отслеживать ни прогресс загрузки, ни ее окончание. Уже много лет используется MovieClipLoader. У него есть событие onLoadInit, вот по его наступлению и надо запустить подъем альфы. А что Вы называете шейпом, я не понял) Шейп - это фигура, например прямоугольник. Какое отношение имеет "прикрученная" фигура к "проявлению от 0 до 100 % видимости"

Вот в моем исходнике покопайтесь
http://flasher.ru/forum/showthread.php?t=112985

DeZQ
13.11.2008, 15:08
используя MovieClipLoader я всё равно не могу задать изменение параметров альфы в клипе.. я могу задать изменение альфы для всего содержимого xml, а мне надо задать изменение альфы для экземпляра клипа loader .


onRelease = function ()
{
loader.loadMovie(this.main);
title_txt.text = this.title;
};
в который грузятся картинки из XML.что бы каждый раз при клике ,клип лоадер принемал значение от _alpha=0 до _alpha=100

nOobCrafter
14.11.2008, 18:36
мммм даже знаю откуда эта галерея ;)
попробуй сразу спряч клип, а потом добавь ему видимости

Нашел я эту галерею, помучал на предмет предложенного и всеравно неполучается, точнее немогу в нее картинки загрзить %)
Вот код:
myPhoto = new XML();
myPhoto.ignoreWhite = true;
myPhoto.onLoad = function(success) {
numimages = this.firstChild.childNodes.length;
spacing = 70;
for (i=0; i<numimages; i++) {
this.picHolder = this.firstChild.childNodes[i];
this.thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i, i);
this.thumbHolder._x = i*spacing;
this.thumbLoader = this.thumbHolder.createEmptyMovieClip("thumbnail_image", 0);
//this.thumbLoader.loadMovie(this.picHolder.attributes.thmb);

var mclLoader:MovieClipLoader = new MovieClipLoader(); // тут пытаемся грузить
var onLoadListener:Object = new Object();
mclLoader.addListener(onLoadListener);
onLoadListener.onLoadInit = function(mcTarget:MovieClip):Void
{
trace("закончилась загрузка ");
};
mclLoader.loadClip(this.picHolder.attributes.thmb, this.thumbLoader);

this.thumbHolder.title = this.picHolder.attributes.title;
this.thumbHolder.main = this.picHolder.attributes.main;

var mclLoader:MovieClipLoader = new MovieClipLoader(); // и тут тоже грузимся %)
var oLoadListener:Object = new Object();
mclLoader.addListener(oLoadListener);
oLoadListener.onLoadInit = function(mcTarget:MovieClip):Void
{
trace("закончилась загрузка ");
};
mclLoader.loadClip(this.main, loader);

this.thumbHolder.onRelease = function() {
//loader.loadMovie(this.main);
title_txt.text = this.title;
trace(loader)
trace(this.main)
};
//trace(this.thumbHolder.main)
}
};
myPhoto.load("image.xml");

DeZQ
15.11.2008, 00:48
всем спасибо.. решил эту проблему, подгрузкой внешнего мувика..который перекрывает картинку..а потом меняет альфу..:)