Link auf externe Bilder über XML [Flash 9]
| Beiträge: 2 Wohnort: Düsseldorf Registriert: Jan 2010
| 06.01.2010, 12:35
Hallo,
Ich bin ein Neuling in Sachen AS3, und brauche eure Hilfe. Ich habe eine XML Datei erstellt woraus ich meine Bilder reinlade. Das klappt alles wunderbar.
Nun möchte ich einen Link auf den Bildern machen, aber das funktioniert nicht. Ich kriege bei dem trace "Undefined" zurück. Wie kriege ich die Nummer von dem angeklickten Bild zurück?
Es handelt sich um den Teil mit dem Comment "LINK WIRD AUF DEN LOGOS PLATZIERT".
Danke.
Der Code:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | import flash.display.*;
import flash.net.URLRequest;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import fl.transitions.Tween;
import fl.transitions.easing.Regular;
import fl.transitions.TweenEvent;
import flash.events.Event;
import flash.events.ProgressEvent;
// FULLSCREEN FLASH
function resizeHandler(e:Event):void
{
logo_bbdo.x = (logo_bbdo.stage.stageWidth) - (logo_bbdo.width);
logo_bbdo.y = (logo_bbdo.stage.stageHeight / 2) - (logo_bbdo.height / 2);
spalte_logos.height = stage.stageHeight;
}
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
stage.dispatchEvent(new Event(Event.RESIZE));
// MENU LOGOS LEFT
button.addEventListener(MouseEvent.CLICK,
function(evt:MouseEvent){
if (spalte_logos.x > -145){
var spalteLinks:Tween = new Tween(spalte_logos, "x", Regular.easeOut, 0, -145, 1, true);
}
else {
var spalteRechts:Tween = new Tween(spalte_logos, "x", Regular.easeIn, -145, 0, 1, true);
}
}
);
// LOAD XML FILE
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, showXML);
xmlLoader.load(new URLRequest("xml/muster1.xml"));
function showXML(e:Event):void {
XML.ignoreWhitespace = true;
var anzahlLogos:XML = new XML(e.target.data);
var i:Number;
var myArray:Array = [];
for (i=0; i < anzahlLogos.client.length(); i++) {
// MOVIECLIP WIRD GENERIERT UND DIE BILDER WERDEN AUS DER XML DATEI GEHOLT
var rect:Shape = new Shape();
rect.graphics.beginFill(0xFFFFFF);
rect.graphics.drawRect(0, 0, 300, stage.stageHeight);
addChild(rect);
var ldr:Loader = new Loader();
ldr.x = 30;
ldr.y = i * 80;
ldr.mask = rect;
//LOGO WIRD AUS DER XML GEHOLT
var url:String = anzahlLogos.client[i].logo.text();
var urlReq:URLRequest = new URLRequest(url);
ldr.load(urlReq);
//ldr.addEventListener(MouseEvent.CLICK, clickHandler);
addChild(ldr);
var link:String = anzahlLogos.client[i].link.text();
myArray.push(link);
trace("array" + myArray);
// LINK WIRD AUF DEN LOGOS PLATZIERT
ldr.addEventListener(MouseEvent.CLICK,
function clickHandler(evt:MouseEvent){
trace(myArray[i]);
}
);
}
}
|
| | | Beiträge: 4909 Wohnort: zuhaus Registriert: Apr 2004
| 06.01.2010, 12:41
|
|