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
-----------------------------------------------------