webForumDet fria alternativet

länka MovieClips från en Array

Flash

2 svar · 295 visningar · startad av rille31

Medlem sedan okt. 2004186 inlägg
Frågan#1

Jag har 3 st movieclips där alla har ett movieclip med instansen loader.
Jag har en Array där jag lagt in sökvägen som en sträng och vill sedan komma åt den för att få klippen osynliga men får det inte
att funka :bla
Tacksam för lite hjälp!

var bgImages:Array = new Array();
bgImages[0] = "bild1.jpg";
bgImages[1] = "bild2.jpg";
bgImages[2] = "bild3.jpg";

var bgSections:Array = new Array();
bgSections[0] = "main.sections.welcomeMc.containerMain.container";
bgSections[1] = "main.sections.aboutMc.containerMain.container";
bgSections[2] = "main.sections.contactMc.containerMain.container";

var bgLoaders:Array = new Array();
bgLoaders[0] = "main.sections.welcomeMc.loader";
bgLoaders[1] = "main.sections.aboutMc.loader";
bgLoaders[2] = "main.sections.contactMc.loader";

var counter:Number = 0;

function loadBg() {
	if (counter<3) {
		//MovieClipLoader
		var myMCL:MovieClipLoader = new MovieClipLoader();
		myListener = new Object();
		myListener.onLoadComplete = function(targetMC) {
            //FUNKAR EJ
			_root[bgLoaders[counter]]._visible = false;
            //
			counter++;
			loadBg();
		};
		myListener.onLoadError = function(targetMC) {
			counter++;
			loadBg();
		};
		myMCL.addListener(myListener);
		myMCL.loadClip(bgImages[counter], bgSections[counter]);
	}
}
Medlem sedan maj 2003750 inlägg
#2

Array-notation som du försöker använda array:en "bgLoaders" i fungerar enbart med en nivå i taget. Vill du använda flera samtidigt så måste du använda eval() istället:

eval("_root." + bgLoaders[counter])._visible = false

Alternativet är om filmklippen existerar redan när denna koden körs. Då kan du med fördel lägga in en referens i array:en istället:

[kod]
... [cut] ...
bgLoaders[0] = main.sections.welcomeMc.loader;
bgLoaders[1] = main.sections.aboutMc.loader;
bgLoaders[2] = main.sections.contactMc.loader;

... [cut] ...

myListener.onLoadComplete = function(targetMC) {
//FUNKAR EJ
bgLoaders[counter]._visible = false;

... [cut] ...
[kod]

/Mirandir

Medlem sedan okt. 2004186 inlägg
#3

Fick det att fungera med eval()

TSM!

259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)