gracias,  David!

No conocía la función alphaTo, lo miro para próximas páginas. Y sí, lo de
las traces es muy útil.

Habéis sido todos muy amables. Gracias ;-)


El día 17/12/07, maria garcia <[EMAIL PROTECTED]> escribió:
>
> Creo que YA me funciona. Estaba copiando el código aquí debajo y he
> probado a poner el clearInterval del que me hablais los dos como primera
> sentencia del slideShow. Creo que ahora todo va bien. QUÉ ALEGRÍA!!!
>
>
> Os copio el código commentado:
> hay muchas cosas que creo que no sirven; son ñapas que he ido metiendo en
> mis múltiples intentos de arreglar esto.
>
> var indiceXML:Number; //nodo del xml que debe leer
> var delay:Number = 5000; //delay entre fotos
> var delayInicial:Number = 300; // delay de la primera foto
> var nFotos:Number = 0; // número de fotos a mostrar
>
> var total:Number = 8;  //número máximo de fotos en xml
> var p:Number = 0; //indice de la foto actual
> var inicial:Boolean ; // indica primera foto.
> var visorCerrado:Boolean = true; //boolean que indica que no se debe
> mostrar visor
>
> // cuando se cierra la ventana donde está el visor se llama a esta
> función. La puse con la intención de introducir el delete y parar asi el
> onEnterFrame cuando acabemos de ver el detalle.
>
>
> function esconderVisor(){
>  //delete this.onEnterFrame ; //si descomento esto. no se ven las fotos
>  visorCerrado = true   ;
>  picture._visible = false ;
> }
>
> // FUNCIÓN QUE LLAMAMOS CUANDO LE DAMOS A MOSTRAR DETALLE. LA PUSE SÓLO
> PARA INICIALIZAR VARIABLES
> function inicializarVisor(indice:Number){
>  image     = [] ;
>  imagen     = [] ;
>  total     = 8  ;
>  nFotos    = 0  ;
>  p      = 0  ;
>  inicial    = true ;
>  indiceXML    = 0  ;
>  preloader._visible  = false ;
>  picture.unloadMovie()  ;
>  picture._visible   = false ;
>  if (indice != -1){
>   llamarVisor(indice)
>  }
> }
> function llamarVisor(indice:Number){
>  trace("loadvisor"+indice)
>
>  indiceXML = indice;
>  xmlData = new XML();
>  xmlData.ignoreWhite = true;
>  xmlData.onLoad = loadXML;
>  trace("vuelvo a cargar visor");
>  xmlData.load("promocionesTerminadas.xml");
> }
> function loadXML(loaded) {
>  if (loaded) {
>   var imagen:Array = xmlData.firstChild.childNodes;
>   var ruta = "fotos_promociones/";
>
>
> //CARGA XML: FUNCIONA BIEN
>   for (var i=0; i<total; i++) {
>    if (imagen[indiceXML].childNodes[i+4].firstChild.nodeValue !=
> undefined){
>     image[i] =
> ruta+imagen[indiceXML].childNodes[i+4].firstChild.nodeValue;
>     trace("imagen"+image[i])
>    }
>    nFotos = image.length;
>   }
>   slideshow();
>  } else {
>   content = "file not loaded!";
>  }
> }
>
> this.onEnterFrame = function() {
>  if (!visorCerrado){
>   filesize = picture.getBytesTotal();
>   loaded = picture.getBytesLoaded();
>   if (loaded != filesize) {
>    preloader.preload_bar._xscale = 100*loaded/filesize;
>   } else {
>     preloader._visible = false;
>     if (!inicial){
>      if (picture._alpha<100) {
>       picture._alpha += 3;
>      }
>     }
>   }
>
>  }
> }
> function nextImage() {
>  if (p< (nFotos-1)) {
>   if (loaded == filesize) {
>    picture._alpha = 0;
>    picture.loadMovie(image[p], 1);
>    trace("ahora p es:"+p)
>    p++;
>    visorCerrado = false;
>    slideshow();
>   }
>   picture._visible = true;
>
>  }
> }
> function slideshow() {
>
> // ESTO ES LO QUE HE PUESTO NUEVO!!!!!!!!!
>   clearInterval(myInterval);
>   if (inicial){
>    myInterval = setInterval(pause_slideshow, delayInicial);
>    inicial = false;
>   }else{
>    myInterval = setInterval(pause_slideshow, delay);
>   }
>   function pause_slideshow() {
>    clearInterval(myInterval);
>    updateAfterEvent();
>    if (p == nFotos-1) {
>     p = 0;
>    }
>    nextImage();
>   }
> }
>
> Creo que ya va bien. Os lo agradezco no sabéis cuánto.
>
>  El día 17/12/07, maria garcia <[EMAIL PROTECTED]> escribió:
> >
> > muchas gracias.
> >
> > voy a intentar responder esas cuestiones que planteais y ver si puedo
> > aclarar más la situación del visor. De momento, utilizo el clearInterval. El
> > onEnterFrame creo que (copié el código del visor de alguna parte y lo he
> > modificado poco) sirve fundamentalmente  para que la foto aparezca y
> > desaparezca poco a poco con un alpha.
> >
> > if (picture._alpha <100){
> >  picture._alpha +=3;
> > }
> >
> > También probé el visor sin el onEnterFrame y los desajustes seguían
> > existiendo. La carga del xml está bien hecha.
> >
> > Voy a intentar responder vuestras preguntas a ver si con ello me aclaro
> > un poco.
> >
> > Muchas gracias de nuevo
> >
> >
> >  El día 17/12/07, maria garcia <[EMAIL PROTECTED] > escribió:
> > >
> > > Hola de nuevo,
> > >
> > > voy a intentar explicar el problema para ver si tenéis respuesta.
> > > Gracias, Raúl, por contestar.
> > >
> > > El visor que me da problemas aparece en una ventana nueva cada vez que
> > > le doy al detalle de una lista de promociones inmobiliarias que tengo en 
> > > la
> > > ventana principal. Es decir, muestro una lista de promociones y si clicas 
> > > al
> > > detalle se abre una nueva ventana en la que muestro por una lado 
> > > información
> > > de texto y por otro un visor con las imágenes asociadas a la promoción que
> > > cargo desde un xml cada vez que entro.
> > >
> > > El funcionamiento del visor es bien sencillo: la imagen de desvanece y
> > > aparece la siguiente; los tiempos los controlo con un setInterval. Hay un
> > > onEnterFrame que me parece es la clave de todo el desajuste.
> > >
> > >  La primera vez que accedo a un detalle el visor funciona
> > > correctamente. El problema viene en los sucesivos accesos a detelles de
> > > otras promociones. El visor entonces se desincroniza, la frecuencia de
> > > muestra se desajusta, el orden de las fotos que cargo desde xml se altera,
> > > etc...Supongo que esto es debido a que el onEnterFrame no se para nunca.
> > > Entonces he probado:
> > >
> > > - delete this.onEnterFrame una vez cierro la ventana del detalle donde
> > > está el visor: con esto lo único que consigo es no ver más las imágenes. 
> > > El
> > > movieclip del visor está en el escenario, no lo creo con createEmpty
> > > MovieClip.
> > >
> > > - this.onEnterFrame=null también dejo de ver las imágenes.
> > >
> > > - updateAfterEvent en la función donde utilizo setInterval: no consigo
> > > nada. Las imágenes se ven pero no aprecio mejora alguna en cuanto a los
> > > desajustes.
> > >
> > > Bueno, esto es todo. No sé si quedó claro.
> > >
> > > Muchas gracias
> > >
> > >
> > >
> > >
> > > El día 17/12/07, maria garcia <[EMAIL PROTECTED] > escribió:
> > > >
> > > > hola gente!!!
> > > >
> > > > Estoy desesperada con un visor action script que no consigo
> > > > sincronizar de ninguna manera. He buscado ayuda varias veces pero 
> > > > finalmente
> > > > no funciona correctamente. La cuestión es que tengo que entregar el 
> > > > trabajo
> > > > ya y todavia no lo tengo funcionando. Supongo que para alguien que 
> > > > controle
> > > > de verdad el tema no será más que una chorrada. ¿Alguien acepta 
> > > > encargos de
> > > > este tipo (remunerados económicamente)? o, ¿sabéis dónde de podría 
> > > > conseguir
> > > > alguien que lo hiciera?
> > > >
> > > > Teléfono de contacto: ´651313503
> > > >
> > > > Mil gracias
> > > >
> > >
> > >
> >
>
-----------------------------------------------------
ASNativos
www.5dms.com
subscripciones/desubscripciones
http://asnativos.5dms.com
-----------------------------------------------------

Responder a