---
title: "attachMovie i loop, rollOver..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/flash/140473-attachmovie-i-loop-rollover"
topic: "Flash"
topic_url: "https://www.webforum.nu/amne/flash"
author: "crisse6"
published: "2006-01-07T10:53:31.000Z"
updated: "2006-01-09T17:20:48.000Z"
replies: 4
views: 432
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/flash/140473-attachmovie-i-loop-rollover"
---

# attachMovie i loop, rollOver...

## #1 — crisse6, 2006-01-07T10:53Z

Hej!

Ska ladda in mina menyer via xml. Får in värdet från xml filen, och är väldigt nära att lösa detta känns det som. Det enda som skapas med två olika instanser (verkar det som) är textfälten. Resten verkar få samma. Iaf. Har skrivit denna kod, men får inte den att tweena, men hårdkodar jag mcNewsDrag20 så tweenar den. 

```
yValue=50;
	for(i=0;i<meny_showcase.length;i++) {
		aShowcase.push(meny_showcase[i]);
		yValue += 16;
		_root.attachMovie("News","mcNews2"+i,getNextHighestDepth(),{_x:522,_y:yValue});
		_root.attachMovie("NewsDrag", "mcNewsDrag2"+i,getNextHighestDepth(),{_x:522,_y:yValue,_width:1,height:16});		
		_root.createTextField("xmlShowcase"+i, getNextHighestDepth(), 522, yValue, 150, 16);	
		_root["xmlShowcase"+i].text = aShowcase[i];
		_root["xmlShowcase"+i].border = false;	
		_root["xmlShowcase"+i].type = "static"
		_root["xmlShowcase"+i].selectable = false;		
		
		_root["mcNews2"+i].onRollOver = function() {
		_root["mcNewsDrag2"+i]._alpha = 100;
   		_root["mcNewsDrag2"+i].tween(["_xscale","_yscale"],[125,100],0.5,"easeOutBounce");		
   		trace(mcNewsDrag20._width);
		soundBlip.start();
   		_root["mcNews2"+i].onRelease = function(sCase) {
		sCase = 'Fall';
		laddaXML(sCase);
			}
		}
```

Permalänk: https://www.webforum.nu/p/140473

## #2 — mirandir, 2006-01-07T17:57Z

Anledningen till att tweenen inte fungerar är ju för att när \_root\["mcNews2"+i\].onRollOver körs så har ju denna for-loops körtsklart för "länge" sedan och i är något helt annat värde. Det du måste göra är att spara en referens till rätt mcNewsDrag

```
... snip ...
_root["mcNews2"+i].mcNewsDrag = _root["mcNewsDrag2"+i];
_root["mcNews2"+i].onRollOver = function() {
    this.mcNewsDrag._alpha = 100;
    this.mcNewsDrag.tween(["_xscale","_yscale"],[125,100],0.5,"easeOutBounce");

... snip ...
```

Dessutom vet jag inte om det är typo men jag hittar inget slut på onRollOver funktionen.

/Mirandir

Permalänk: https://www.webforum.nu/p/1743253

## #3 — crisse6, 2006-01-09T00:23Z

Har jag sagt innan att jag älskar dig mirandir? :)

Permalänk: https://www.webforum.nu/p/1743923

## #4 — crisse6, 2006-01-09T16:44Z

Tjena igen. Det funkade ju fint liksom. Men! Nu när jag klickar på nån av dom så laddar den inte som den inte in som den ska... Hmm why?

Bifogar hela inladdningen av xml här. Det är väl främst loopen man bör kolla i...

```
//XML inladdning
function laddaXML(sCase) {
import com.xfactorstudio.xml.xpath.*;
var aURL:Array = new Array();
var aDesc:Array = new Array();
var aBredd:Array = new Array();
var nNasta:Number = 0;
var aShowcase:Array = new Array();
myDoc = new XML();
myDoc.ignoreWhite = true;
myDoc.onLoad = function(){
	var products = XPath.selectNodes(this,"/slideshow/foton[@location='" +sCase +"']/photo@url");
	var textInfo = XPath.selectNodes(this,"/slideshow/foton[@location='" +sCase +"']/photo@description");
	var bredd = XPath.selectNodes(this,"/slideshow/foton[@location='" +sCase +"']/photo@width");
	var meny_showcase = XPath.selectNodes(this,"/slideshow/meny[@vilken='Showcase']/menytitle@val");
	
	for(i=0;i<products.length;i++) {
		aURL.push(products[i]);			
		aDesc.push(textInfo[i]);
		aBredd.push(bredd[i]);	
		}
	yValue=50;
	for(i=0;i<meny_showcase.length;i++) {
		aShowcase.push(meny_showcase[i]);
		yValue += 16;
		_root.attachMovie("News","mcNews2"+i,getNextHighestDepth(),{_x:522,_y:yValue});
		
		_root.attachMovie("NewsDrag", "mcNewsDrag2"+i,getNextHighestDepth(),{_x:522,_y:yValue,_width:1,height:16});
		_root.createTextField("xmlShowcase"+i, getNextHighestDepth(), 522, yValue, 150, 16);
		_root["xmlShowcase"+i].text = aShowcase[i];
		_root["xmlShowcase"+i].border = false;	
		_root["xmlShowcase"+i].type = "static";
		_root["xmlShowcase"+i].selectable = false;		
		
		_root["mcNews2"+i].mcNewsDrag = _root["mcNewsDrag2"+i];
		_root["mcNews2"+i].onRollOver = function() {
		this.mcNewsDrag._alpha = 100;
    	this.mcNewsDrag.tween(["_xscale","_yscale"],[125,100],0.5,"easeOutBounce");		
		soundBlip.start();
   		_root["mcNews2"+i].onRelease = function(sCase) {
		sCase = 'Fall';
		laddaXML(sCase);
			}
		}
		_root["mcNews2"+i].onRollOut = function() {
  		this.mcNewsDrag.tween(["_xscale","_yscale"],[0,100],3,"easeOut");
   		}
		//HÄR E DET SLUTT!
}	
	
	//mcBakgrund.mcHolder._alpha = 100;
	var myAlpha:Alpha = new Alpha(mcBakgrund.mcHolder,[0,100],3000,Elastic.easeInOut);
			myAlpha.run()
	var myAlpha2:Alpha = new Alpha(mcBakgrund.mcProjectInfo,[0,100],3000,Elastic.easeInOut);
			myAlpha2.run()
	mcBakgrund.mcHolder.loadMovie(aURL[nNasta]);
	
	mcBakgrund.mcProjectInfo.txtInfoText.text = aDesc[nNasta];
	txtCurrent.text = (nNasta+1)+ "/" + products.length;	
	sBredden = aBredd[nNasta];
	//Navigering i slideshow	
	btnNext.onRelease = function() {
		if(nNasta>=products.length-1) {
		nNasta=0;
		}
		else {
		nNasta++;
		}
		easeSpeed = 3; // the higher, the slower
		target_xscale = 330; // start at a scale of 100%
		mcBakgrund.mcVitbakgrund._xscale -= (target_xscale + mcBakgrund.mcVitbakgrund._xscale)/easeSpeed;
		target_yscale = 20827; // start at a scale of 100%
		mcBakgrund.mcTextdrag._yscale -= (target_yscale + mcBakgrund.mcTextdrag._yscale)/easeSpeed;

		var myAlpha:Alpha = new Alpha(mcBakgrund.mcHolder,[0,100],3000,Elastic.easeInOut);
			myAlpha.run()						
		var myAlpha2:Alpha = new Alpha(mcBakgrund.mcProjectInfo,[0,100],3000,Elastic.easeInOut);
			myAlpha2.run()
			
		mcBakgrund.mcHolder.loadMovie(aURL[nNasta]);
		mcBakgrund.mcProjectInfo.txtInfoText.text = aDesc[nNasta];
		txtCurrent.text = (nNasta+1)+ "/" + products.length;
		
	}
	btnPrevious.onRelease = function() {
		if(nNasta<=0) {
		nNasta=0;
		}
		else {
		nNasta--;
		}
		easeSpeed = 3; // the higher, the slower
		target_xscale = 100; // start at a scale of 100%
		mcBakgrund.mcVitbakgrund._xscale -= (target_xscale + mcBakgrund.mcVitbakgrund._xscale)/easeSpeed;
		target_yscale = 20827; // start at a scale of 100%
		mcBakgrund.mcTextdrag._yscale -= (target_yscale + mcBakgrund.mcTextdrag._yscale)/easeSpeed;
		
		var myAlpha:Alpha = new Alpha(mcBakgrund.mcHolder,[0,100],3000,Elastic.easeInOut);
			myAlpha.run()		
		var myAlpha2:Alpha = new Alpha(mcBakgrund.mcProjectInfo,[0,100],3000,Elastic.easeInOut);
			myAlpha2.run()
		mcBakgrund.mcHolder.loadMovie(aURL[nNasta]);
		mcBakgrund.mcProjectInfo.txtInfoText.text = aDesc[nNasta];
		txtCurrent.text = (nNasta+1) + "/" + products.length;
		
		}
}	

myDoc.load("slideshow.xml");
}
//
```

Permalänk: https://www.webforum.nu/p/1744178

## #5 — crisse6, 2006-01-09T17:20Z

Okej. Det där löstes genom att lägga onRelease utanför onRollOver... men ett problem. Så fort jag klickar på någon av menyerna som är hårdkodat/xml inladdat så läggs det som ett vitt mc över mina xml menyer. Dom går å klicka på ändå eftersom mcNewsDrag ligger där vid kanten. Men varför blir det så?

Permalänk: https://www.webforum.nu/p/1744197

---

Tråden på webben: https://www.webforum.nu/amne/flash/140473-attachmovie-i-loop-rollover
