Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

João Melo

Slide Show com xml

Recommended Posts

Ai gente tenho um script de um slide que exibe as imagens que tenho em um diretório no flash, exibe em seqüencia.

Ai vem o problema, quando chega na última imagem não está voltando a exibir as imagens e fica parado na última imagem.

Como é que resolve isso?

images.xml

<!--  'timer' :: number of seconds between each image transition'order' :: how you want your images displayed. choose either 'sequential' or 'random''looping' :: if the slide show is in sequential mode, this stops the show at the last image (use 'yes' for looping, 'no' for not)'fadeTime' :: velocity of image crossfade. Increment for faster fades, decrement for slower. Approximately equal to seconds.'xpos' :: _x position of all loaded clips (0 is default)'ypos' :: _y position of all loaded clips (0 is default)--><gallery timer="10" order="sequential" fadetime="2" looping="yes" xpos="0" ypos="0"><image path="slide/1.jpg" /><image path="slide/2.jpg" /><image path="slide/3.jpg" /><image path="slide/4.jpg" /><image path="slide/5.jpg" /><image path="slide/6.jpg" /><image path="slide/7.jpg" /><image path="slide/8.jpg" /><image path="slide/9.jpg" /><image path="slide/10.jpg" /><image path="slide/11.jpg" /><image path="slide/12.jpg" /><image path="slide/13.jpg" /><image path="slide/14.png" /><image path="slide/15.jpg" /><image path="slide/16.jpg" /></gallery>
slide.swf

/* [url="http://whatdoiknow.org"]http://whatdoiknow.org[/url]   *//* [url="http://domineydesign.com"]http://domineydesign.com[/url] *//****************************/// set random # variables - each must be 0 for first 'while' loop belowvar randomNum = 0;var randomNumLast = 0;// parent containervar container_mc = this.createEmptyMovieClip("container", 0);// movie clip containerscontainer_mc.createEmptyMovieClip("loader1_mc", 2);container_mc.createEmptyMovieClip("loader2_mc", 1);// preload watcherthis.createEmptyMovieClip("watcher_mc", 100);// load xmlimages_xml = new XML();images_xml.ignoreWhite = true;images_xml.onLoad = parse;images_xml.load("images.xml");function parse(success) {	if (success) {		imageArray = new Array();		var root = this.firstChild;		_global.numPause = Number(this.firstChild.attributes.timer*1000);		_global.order = this.firstChild.attributes.order;		_global.looping = this.firstChild.attributes.looping;		_global.fadetime = Number(this.firstChild.attributes.fadetime);		_global.xpos = Number(this.firstChild.attributes.xpos);		_global.ypos = Number(this.firstChild.attributes.ypos);		var imageNode = root.lastChild;		var s = 0;		while (imageNode.nodeName != null) {			imageData = new Object();			imageData.path = imageNode.attributes.path;			imageArray[s] = imageData;			imageNode = imageNode.previousSibling;			s++;		}		// place parent container		container_mc._x = _global.xpos;		container_mc._y = _global.ypos;		// parse array		imageArray.reverse();		imageGen(imageArray);	} else {		trace('problem');	}}// depth swappingfunction swapPlace(clip, num) {	eval(clip).swapDepths(eval("container_mc.loader"+num+"_mc"));}function loadImages(data, num) {	if (i == undefined || i == 2) {		i = 2;		createLoader(i, data, num);		i = 1;	} else if (i == 1) {		createLoader(i, data, num);		i = 2;	}}function createLoader(i, data, num) {	thisLoader = eval("container_mc.loader"+i+"_mc");	thisLoader._alpha = 40;	thisLoader.loadMovie(data[num].path);	watcher_mc.onEnterFrame = function() {		var picLoaded = thisLoader.getBytesLoaded();		var picBytes = thisLoader.getBytesTotal();		if (isNaN(picBytes) || picBytes<4) {			return;		}		if (picLoaded/picBytes>=1) {			swapPlace("container_mc.loader2_mc", 1);			alphaTween = new mx.transitions.Tween(thisLoader, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, _global.fadetime, true);			timerInterval = setInterval(imageGen, _global.numPause, data);			delete this.onEnterFrame;		}	};}function imageGen(data) {	// random, or sequential?	if (_global.order == "random") {		// choose random # between 0 and total number of images		while (randomNum == randomNumLast) {			randomNum = Math.floor(Math.random()*data.length);			trace(randomNum);		}		loadImages(data, randomNum);		randomNumLast = randomNum;	} else if (_global.order == "sequential") {		// start at 0, increment to total number of images, then drop back to zero when done		if (p == undefined || p == data.length && _global.looping == "yeo") {			p = 0;		} else {			break;		}		loadImages(data, p);		p++;	} else {		trace("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");	}	clearInterval(timerInterval);}stop();

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO

também tinha erro de digitação aqui => "...if (p == undefined || p == data.length && _global.looping == "yeo") {..." yes.

acho que foi o sono :blink:

/* <a href="http://whatdoiknow.org" target="_blank">http://whatdoiknow.org</a>   *//* <a href="http://domineydesign.com" target="_blank">http://domineydesign.com</a> *//****************************/// set random # variables - each must be 0 for first 'while' loop belowvar randomNum = 0;var randomNumLast = 0;// parent containervar container_mc = this.createEmptyMovieClip("container", 0);// movie clip containerscontainer_mc.createEmptyMovieClip("loader1_mc", 2);container_mc.createEmptyMovieClip("loader2_mc", 1);// preload watcherthis.createEmptyMovieClip("watcher_mc", 100);// load xmlimages_xml = new XML();images_xml.ignoreWhite = true;images_xml.onLoad = parse;images_xml.load("images.xml");function parse(success) {   if (success) {	  imageArray = new Array();	  var root = this.firstChild;	  _global.numPause = Number(this.firstChild.attributes.timer*1000);	  _global.order = this.firstChild.attributes.order;	  _global.looping = this.firstChild.attributes.looping;	  _global.fadetime = Number(this.firstChild.attributes.fadetime);	  _global.xpos = Number(this.firstChild.attributes.xpos);	  _global.ypos = Number(this.firstChild.attributes.ypos);	  var imageNode = root.lastChild;	  var s = 0;	  while (imageNode.nodeName != null) {		 imageData = new Object();		 imageData.path = imageNode.attributes.path;		 imageArray[s] = imageData;		 imageNode = imageNode.previousSibling;		 s++;	  }	  // place parent container	  container_mc._x = _global.xpos;	  container_mc._y = _global.ypos;	  // parse array	  imageArray.reverse();	  imageGen(imageArray);   } else {	  trace('problem');   }}// depth swappingfunction swapPlace(clip, num) {   eval(clip).swapDepths(eval("container_mc.loader"+num+"_mc"));}function loadImages(data, num) {   if (i == undefined || i == 2) {	  i = 2;	  createLoader(i, data, num);	  i = 1;   } else if (i == 1) {	  createLoader(i, data, num);	  i = 2;   }}function createLoader(i, data, num) {   thisLoader = eval("container_mc.loader"+i+"_mc");   thisLoader._alpha = 40;   thisLoader.loadMovie(data[num].path);   watcher_mc.onEnterFrame = function() {	  var picLoaded = thisLoader.getBytesLoaded();	  var picBytes = thisLoader.getBytesTotal();	  if (isNaN(picBytes) || picBytes<4) {		 return;	  }	  if (picLoaded/picBytes>=1) {		 swapPlace("container_mc.loader2_mc", 1);		 alphaTween = new mx.transitions.Tween(thisLoader, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, _global.fadetime, true);		 timerInterval = setInterval(imageGen, _global.numPause, data);		 delete this.onEnterFrame;	  }   };}function imageGen(data) {   // random, or sequential?   if (_global.order == "random") {	  // choose random # between 0 and total number of images	  while (randomNum == randomNumLast) {		 randomNum = Math.floor(Math.random()*data.length);		 trace(randomNum);	  }	  loadImages(data, randomNum);	  randomNumLast = randomNum;   } else if (_global.order == "sequential") {	  // start at 0, increment to total number of images, then drop back to zero when done	  if (p == undefined || p == data.length && _global.looping == "yes") {		 p = 0;	  }	  loadImages(data, p);	  p++;   } else {	  trace("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");   }   clearInterval(timerInterval);}stop();

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.