View Single Post
  #1 (permalink)  
Old May 5th, 2008, 11:05
ahwell ahwell is offline
Reputable Member
Join Date: Aug 2007
Location: netherlands
Posts: 108
Thanks: 0
Thanked 0 Times in 0 Posts
xml & external link

Hi,
Im making a header in flash which loads in jpg's via an xml file. Its kind of a photoslideshow. Now I want an onRelease on each jpg which gets a different getURL from the xml. Can this be done? This is the code I use in flash:
Code: Select all
delay = 3000;
//-----------------------
function loadXML(loaded) {
 if (loaded) {
  xmlNode = this.firstChild;
  image = [];
  description = [];
  total = xmlNode.childNodes.length;
  for (i=0; i<total; i++) {
   image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
   description[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
  }
  firstImage();
 } else {
  content = "file not loaded!";
 }
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("images.xml");
// ///////////////////////////////////
listen = new Object();
listen.onKeyDown = function() {
 if (Key.getCode() == Key.LEFT) {
  prevImage();
 } else if (Key.getCode() == Key.RIGHT) {
  nextImage();
 }
};
Key.addListener(listen);
previous_btn.onRelease = function() {
 prevImage();
};
next_btn.onRelease = function() {
 nextImage();
};
// ///////////////////////////////////
p = 0;
this.onEnterFrame = function() {
 filesize = picture.getBytesTotal();
 loaded = picture.getBytesLoaded();
 preloader._visible = true;
 if (loaded != filesize) {
  preloader.preload_bar._xscale = 100*loaded/filesize;
 } else {
  preloader._visible = false;
  if (picture._alpha<100) {
   picture._alpha += 2;
  }
 }
};
var myInterval;
function nextImage() {
 p++;
 p %= image.length;
 if (loaded == filesize) {
  picture._alpha = 0;
  picture.loadMovie(image[p], 1);
  desc_txt.text = description[p];
  picture_num();
  clearInterval(myInterval);
  if (btn.playing) {
   slideshow();
  }
 }
}
function prevImage() {
 clearInterval(myInterval);
 if (btn.playing) {
  slideshow();
 }
 if (p>0) {
  p--;
 } else {
  p = image.length-1;
 }
 picture._alpha = 0;
 picture.loadMovie(image[p], 1);
 desc_txt.text = description[p];
 picture_num();
}
function firstImage() {
 if (loaded == filesize) {
  picture._alpha = 0;
  picture.loadMovie(image[0], 1);
  desc_txt.text = description[0];
  picture_num();
  clearInterval(myInterval);
  if (btn.playing) {
   slideshow();
  }
 }
}
function picture_num() {
 current_pos = p+1;
 pos_txt.text = current_pos+"/"+total;
}
function slideshow() {
 myInterval = setInterval(pause_slideshow, delay);
 function pause_slideshow() {
  clearInterval(myInterval);
  nextImage();
 }
}
btn.t.text = "ll";
btn.playing = true;
btn.onPress = function() {
 if (this.playing) {
  this.playing = false;
  clearInterval(myInterval);
  this.t.text = "ll";
 } else {
  this.playing = true;
  nextImage();
 
  this.t.text = ">";
 }
};
Hope someone can help me! I googled all morning without any luck.
Reply With Quote